Refactor Images to pip Install

I feel like there's an identity crisis in this repository that's between the actual d1lod python library, the deployment of it, and the documentation.
For example, the fact that we need to copy the d1lod directory into the docker build directory, which then gets copied into the image, means something's not quite right. Doing this will bring about bugs in the future where the requirements.txt in the d1lod folder aren't installed; I'm assuming this is why some of the scheduler requirements are a subset of the d1lod requirements file (since d1lod is installed in the scheduler, the scheduler's requirements file gives us a way to install the d1lod requirements-without ever touching the d1lod requirements file) (and scheduler doesn't use python-dateutil, but has it defined in the requirements, probably so that d1lod has access to it).
If it were up to me, I'd create a separate repository for the python library, and document it as a standalone library which is standard enough. Then I'd create a second repository that's responsible for DataONE's deployment of services to spin up the graph store. One container in that stack uses the d1lod package and could be installed via a simple git clone & pip install, or just a pip install git+ . This would also allow for better placed documentation. Right now we have the docs/ folder, which is probably more appropriate in the python library's documentation (maybe as readthedocs). The architecture of the Slinky K8 stack would belong in the deployment repository.
At the least we should be able to pip install the d1lod folder. At this moment, attempting to do so raises the following

Any thoughts?

Sounds like you have a lot of experience I don't have yet so I'm happy to defer to you on some of the Python- and k8s-isms. The d1lod Python package needs to be mostly ripped out or at least overhauled anyway so I wouldn't stress too much about above issues like copying into images and not being able to pip-install. Those are probably just my goofs.
The current approach is advantageous because I could tweak the d1lod package source, re-build containers, and see my changes reflected immediately (without pushing to another repo then pulling down changes, or pushing to a package repository). So I'd love to keep that unless it causes more problems than its worth.
Would doing as you suggest above and just refactoring things so a local pip-install works be fine for now?

I think getting the pip install to work with pip install git+  would be huge for separating the build stuff from the actual contents of the repo.
The reason the previous approach was working was because the docker-compose file was at the project root-so it had access to d1lod and to the Dockerfiles. This is important because you're not able to include anything above the directory that the docker build command is run from-in this case the project root. After getting rid of the docker-compose file, the build command has to be run in each container's folder. For this reason, we can't copy d1lod as ../d1lod since that sort of directory traversal is forbidden by docker-hence the manual copying of the d1lod now.
That's a really good point about testing this stuff locally... pip install git+ would require a git push for every code change which would be a huge pain. I think this issue is coming from differing requirements from a CI perspective: ideally Slinky deploys on production without any sort of configuration needed (this is where the idea for installing via git comes from). From a development perspective we want to be able to create images from local directories. One compromise is having  commented out lines in the Dockerfiles that should be uncommented for building locally vs deploying.
When it comes to running the stack under a test/dev environment with local images, the k8 deployment files will need to be modified to point to the local docker registry instead of dockerhub (which I should document somewhere)

I did a bit of research on how to do a good job building Python packages and I think I have a good system in place at https://github.com/DataONEorg/slinky/tree/feature_update_graph_pattern/. The d1lod package now uses an entirely setup.py-based install so you can just pip install [-e] . it or pip install it from GitHub. I'm pretty happy with this for now because it supports building development images from local sources and also building release images from git branches/tags without any real fuss.
Some of the issues raised above aren't fully addressed by my changes so I'm going to leave this open until we can touch base on those.

I think that the pip install should get around the manual copying of the packages to the library folders-which I think was mixing me up the most. Once the pip refactor is complete I think this issue should be resolved

Completed in #42 ; we can now pip install . in the root d1lod directory.


Add aws-s3-folder example

add the first example and scaffolding

OK, made the requested changes, just waiting for the lang plugin fix to pass the CI

something is no yes in Examples smoke tests

Thanks, fixed :)


Post to hackage

... To enable import LambdaDesinger from e.g. a .tidal file

It's up! https://hackage.haskell.org/package/LambdaDesigner


Add 'consul leave' as ExecStop-parameter for systemd-unit

Can you look at where it was previously decided that this was not desirable in #85 and confirm if anything has changed?


(WIP) Reproducibility

Done

Introduce flag -n / --n-iterations to run multiple times each config with dev/automate_training.py
Compute average, standard dev for each config
Compute student T-test to get p-values between each pair of configs
Test on random data
Rename automate_training.py to compare_models.py
Random seed change
Add option to run cmd_eval and compare test scores
Test with real configs (train / validation)
Test with real configs (eval / test)

To do

This tool is really great! Actually I find it awesome, thank you.
General comment: This p-value computation is to assess the reproducibility of training across different hyperparameters.
For instance, it would help to answer the question: "Does CyclicLR scheduler lead to a significant  better training than CosineAnnealingLR scheduler when comparing the validation_dice?" --> @olix86 : Is it correct?
Once hyperparameter optimisation performed: To answer the reproducibility of our results with a specific model (as mentioned during our past abstract submissions), we will need to implement a similar tool but running cmd_train then cmd_eval (or cmd_test) across n_iterations (instead of cmd_train only.

For instance, it would help to answer the question: "Does CyclicLR scheduler lead to a significant better training than CosineAnnealingLR scheduler (when comparing the validation_dice)?"

Yep exactly

Once hyperparameter optimisation performed: To assess the reproducibility of our results with a specific model (as mentioned during our past abstract submissions) or to compare two approches (i.e. FiLM vs no-FiLM), we will need to implement a similar tool but running cmd_train then cmd_eval (or cmd_test) across n_iterations (instead of cmd_train only).

The script was designed for broad hyperparam optimization but it's possible to run it for only 1 or 2 configs to assess the reproducibility of  a specific model or for FiLM vs no-FiLM. We could add a flag to call the test command when cmd_train has completed to cover this use case? What do you think?

The script was designed for broad hyperparam optimization but it's possible to run it for only 1 or 2 configs to assess the reproducibility of a specific model or for FiLM vs no-FiLM.

Yes exactly, that is what I was thinking of too :-)

We could add a flag to call the test command when cmd_train has completed to cover this use case

As the script is called automate_training --> we could either rename the file, something like compare_models, either have a different script dedicated to "testing comparison" (my preference). If we go with the second option, we could share some code between the two scripts as a lot of duplication.

and compare test dice instead of validation dice
Yep absolutely --> if not too complicated, we could run the cmd_eval instead of the cmd_test since cmd_eval calls cmd_test if pred_masks folder does not exit yet then run the 3D metrics evaluation (so we will have more info than the dice) and output a csv file --> which should be friendly with your Panda dataframe approach.

Also, if not implemented yet, this user case would need to change the random seed for each iteration (but same seed for the 2 models during one iteration).

In our case the problem is mostly one-sided i.e. is model X better than baseline U-Net? So the outputed p-value should be divided by 2 to answer this question . Should I output p/2 directly?

i would just output p with a two-sided test and argue in the report "the two cases are statistically different"

Sample output
[5 rows x 12 columns]
Detailed results
            log_directory  batch_size  initial_lr  ...  best_validation_dice  best_validation_loss  test_dice
0     log_sc-batch_size=8           8       0.001  ...             -0.871973             -0.871973   0.711156
1     log_sc-batch_size=8           8       0.001  ...             -0.851089             -0.851089   0.741970
2  log_sc-initial_lr=0.01          18       0.010  ...             -0.827729             -0.827729   0.509227
3  log_sc-initial_lr=0.01          18       0.010  ...             -0.800095             -0.800095   0.525435

[4 rows x 8 columns]
Average dataframe
                        batch_size  initial_lr  best_training_dice  ...  best_validation_dice  best_validation_loss  test_dice
log_directory                                                       ...
log_sc-batch_size=8              8       0.001           -0.472531  ...             -0.861531             -0.861531   0.726563
log_sc-initial_lr=0.01          18       0.010           -0.439524  ...             -0.813912             -0.813912   0.517331

[2 rows x 7 columns]
Standard deviation dataframe
                        batch_size  initial_lr  best_training_dice  ...  best_validation_dice  best_validation_loss  test_dice
log_directory                                                       ...
log_sc-batch_size=8            0.0         0.0            0.005822  ...              0.014767              0.014767   0.021789
log_sc-initial_lr=0.01         0.0         0.0            0.028881  ...              0.019540              0.019540   0.011461

[2 rows x 7 columns]
P-values array
                        log_sc-batch_size=8  log_sc-initial_lr=0.01
log_sc-batch_size=8                1.000000                0.006851
log_sc-initial_lr=0.01             0.006851                1.000000

Note : added a wiki page for this PR
https://github.com/neuropoly/ivado-medical-imaging/wiki/Automate-training-and-model-comparison

Note : added a wiki page for this PR
https://github.com/neuropoly/ivado-medical-imaging/wiki/Automate-training-and-model-comparison

great! i just slightly changed the name for the more explicit Pipeline for training and model comparison (this is PR is de facto about a pipeline, which happens to be automated)


[W.I.P]refactor: refactored the model section code

Refactored the code in model Section to follow the Golang Casbin's naming function

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

@Rishabhmodii plz sign CLA:

@MrUnfunny @xiaobeiswift plz review


Add skeleton for development and proposal docs

Draft PR showcasing the envisioned structure of the dev docs.
Signed-off-by: Attila Klenik<EMAIL_ADDRESS>

@davidkel, thanks for the insights! I've updated the readme and kept only one fig-gen script.


Catch error when usign celebate liblary

Hello, in your routes you have such file as auth.ts
And we're using celebrate library to check if all data from front-end in the right format.
route.post(
    '/signup',
    celebrate({
      body: Joi.object({
        name: Joi.string().required(),
        email: Joi.string().required(),
        password: Joi.string().required(),
      }),
    }),

If my name is number or another different type (not string) I have a response from the server like this.
{
    "errors": {}
}

I would like to see response something like this
{
    "errors": {"Wrong json data type"}
}

How can I do this ?
Thank you!

Hi @hubochkin
I think what is missing is the Error Handler for Celebrate
Check on your express setup, that you have the Error Handler set after the routes, something like this:
const routes = require('../api/routes')
const { errors } = require('celebrate');

const app = express()
app.use('/api', routes())
app.use(errors());

You can read more about it on the documentation of Celebrate
https://github.com/arb/celebrate#example-usage

@santiq  Thank you! It's really helpful for me. Now you can add it to your blueprint, or I can create a merge request later.


Theoretical analysis of q-FFL

Dear author
I have a question on the theoretical analysis of q-FFL that I may not be understanding due to a lack of my knowledge. In first equation in the proof of lemma 7, can you explain the inequality? I mean how does this hold if I cancel out the identical terms from both sides. We may look into the attachment for the clarification of my question.

Also the same question for lemma 8. How does inequality hold in the marked section of the image? To me it seems like it contradicts the inequality condition of lemma 7.

\sum F_k^2 (w_1^) \leq \sum F_k^2 (w_0^) holds because f_1(w_1^) \leq f_1(w_0^) (w_1* is the minimizer of f_1(w)). (f_q(w) is defined right after Eq (8).)
\sum F_k (w_1^) \geq \sum F_k (w_0^) holds because f_0(w_1^) \geq f_0(w_0^).

Note that as Tian mentioned, by definition, w^0 is the minimizer of \sum{k} F_k(w) and w^1 is the minimizer of \sum{k} (F_k(w))^2. Hence,

for any w, \sum_{k} F_k(w) >=  \sum_{k} F_k(w^0), and in particular, \sum{k} F_k(w^1) >=  \sum{k} F_k(w^*_0).
for any w, \sum_{k} (F_k(w))^2 >=  \sum_{k} (F_k(w^1))^2, and in particular, \sum{k} (F_k(w^0))^2 >=  \sum{k} (F_k(w^*_1))^2.

Thanks. Got it.


fix for issue #149

Should remove "ignorecase=true" in git config file to make the file name change available.

operation error, will fix again


Fixed an edge case bug + Refactored the EKS node pool CloudFormation template version handling

Q
A

Bug fix?
yes

New feature?
no

API breaks?
no

Deprecations?
no

Related tickets
-

License
Apache 2.0

What's in this PR?

Fixed a bug which caused the current template version not being retrieved for the node pool stacks which are updated when all node pool version attributes were changed during the update due to a left in condition for old value retrieval.
Refactored the EKS node pool CloudFormation template version handling.

Simplified TemplateVersion handling and make it easier to use/update.
Single point to track the latest node pool version as the default value of the TemplateVersion parameter in the template itself, keeping the update requirement local when the template changes, so no manual setting/update is required from code to keep all new stacks up to date with the latest template version.
Changed the TemplateVersion handling in the Golang code to use a strongly typed semantic version representation with helper functions instead of a "weakly typed string".
Refactored the CloudFormation stack parameter value parsing to handle the strongly typed semantic version and also tuned it a little bit to make full use of mapstructure and avoid double direction decoding/parsing (this resulted in 1.5 function being dropped completely at the expense of implementing a proxy function interface).

Why?

This is useful to ease the implementation of #3347, because it requires another template version update (new parameters being introduced) so I fine-tuned the template version handling for that purpose.
Additional context

Tested using NodePoolAPI.UpdateNodePool with both enterprise and open-source Pipeline implementation due to the condition and template version retrieval change.
Double checked Template version, it updates as expected.
Checklist

[X] Implementation tested (with at least one cloud provider)
[X] Code meets the Developer Guide
~OpenAPI and Postman files updated (if needed)~
~User guide and development docs updated (if needed)~
~Related Helm chart(s) updated (if needed)~

I'm going to hotfix 0.63.1 with this change if it is integrated.


feat(modules/bootstrap)!: Allow to specify GCS bucket location

Description

modules/bootstrap

maint.tf

added argument location = var.location to resource "google_storage_bucket" "this"

variables.tf

added variable definition for location, with default value of us (GCS default value) and a description.

Motivation and Context
Solving Issue #148
How Has This Been Tested?
module/bootstrap has been tested by running examples/common_firewall. Build works as expected.
Also there is no change to the default behaviour, just and additional argument that can be used to change the location of the GCS Bucket from the default "us" to a custom one.
Types of changes

Breaking change (fix or feature that would cause existing functionality to change)

Checklist

[x] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes if appropriate.
[x] All new and existing tests passed.

Hello @mazwettler , thanks for your contribution! As a last point before we can proceed with this change - can you please run terraform pre-commit hooks as described in the contributing guide? It will care of necessary documentation updates.

[ ] Update module's README.md

Will do!
Sorry this was my first pull request - kinda new to contributing :)

added the argument to the examples that use the bootstrap bucket and ran the pre-commit hook.


xctool run test fail with iOS SDK 8.2

Hi,
I have the last xctool (xctool -v   =>  0.2.1)
I have the last XCode Version 6.2 (6C107a)
I try to run test target with xctool on command line :
xctool -project MyApp.xcodeproj -scheme MyAppTests -configuration Debug -sdk "iphonesimulator8.2" clean test
I got this logs :
** CLEAN SUCCEEDED ** (8896 ms)
0 errored, 0 warning (135403 ms)
[Info] Collecting info for testables... (5056 ms)
run-test MyAppTests.xctest (iphonesimulator8.2, logic-test)
-[FAILED_BEFORE TESTS_RAN]
Test did not run: the test bundle stopped running or crashed before the test suite started.
2015-02-02 18:26:14.854 sim[37616:295878] Failed to find SDK: '8.1'
I got this problem only when i use sdks 8.2, is xctool not yet updated with the last beta SDK 8.2 ??
Thank you

Hi Aymen, we have fix this issue by updating tool to 0.2.2, right ?

Yes fixed by updating xctool to the lateset version


Last line of plugins.txt ignored if a new line is not present

...on that last line

Supersedes #47

Thank you for a pull request! Please check this document for how the Jenkins project handles pull requests

@reviewbybees

:+1:

:+1:


cannot support create items from non-journal pages？

When I try to create a loop from a non-journal page, the content stays at the last one created in the journal, so this plugin cannot support create items from non-journal pages?

Hi, yes that is correct because it uses the date that the TODO is on to check if the habit has been done. Regards,ben On 1 Dec 2022, at 1:57 AM, lity @.***> wrote:
When I try to create a loop from a non-journal page, the content stays at the last one created in the journal, so this plugin cannot support create items from non-journal pages?
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: @.***>


Swapped image of A button

The image was breaking line and centering, so I swapped it for unicode.

Super small change, so I'm pushing myself.

Super small change, so I'm pushing myself.


[Feature] Please add support for Llama 3.2

Motivation
The Llama 3.2 family models are applicable for small devices such as smart cameras or mobile phones. But it seems lmdeploy currently does not support for Llama 3.2
When I started to use the Llama 3.2 model for example:
model_id = "meta-llama/Llama-3.2-11B-Vision"
backend_config = TurbomindEngineConfig(cache_max_entry_count=0.2, tp =2, enable_prefix_caching=True)
pipe = pipeline(model_id,backend_config=backend_config)
It showed the following error.
212 config = __check_config(trans_version)
    213 __check_model_transformers_version(config, trans_version)
--> 214 __check_model_dtype_support(config)
    215 check_awq(config)

 204 except Exception as e:
    205     message = (f'Checking failed with error {e}',
    206                'Please send issue to LMDeploy with error logs.')
--> 207     _handle_exception(e, 'Model', logger, message=message)
    209 return model_config

 17 logger.error(f'{type(e).__name__}: {e}')
     18 logger.error(f'{red_color}'
     19              f'<{mod_name}> test failed!\n'
     20              f'{message}'
     21              f'{reset_color}')
---> 22 exit(1)

Related resources
No response
Additional context
No response

It has been supported. May try the latest version


Make CEs more intellisense friendly

Currently it's impossible to see what custom operations are available:

Related issue https://youtrack.jetbrains.com/issue/RIDER-15832

Related discussion - #16
I do think it's tooling problem, not really Saturn's CE problem. Any ideas how we could make them more "intellisense friendly" ?

https://github.com/Microsoft/visualfsharp/pull/4831

If you are sorting completion items by kind in Ionide, it should just work after updating FCS.


can't  access from internet

Is this a bug report or a feature request?:
What happened:
can't acesss form internet
node can access.
What you expected to happen:
not listen port 80/443 in node
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Environment:

MetalLB version:  v0.7.3
Kubernetes version: v1.11.0
BGP router type/version:
OS (e.g. from /etc/os-release):  CentOS Linux 7 (Core)
Kernel (e.g. uname -a):  4.19.8-1.el7.elrepo.x86_64

Sorry, but I no longer have the time to debug MetalLB deployments for people. I want to keep this tracker specifically for bugs and features, so I'm going to close this. At some point I may have time to write general troubleshooting documentation, but as a first step towards that I need to clear up the issue tracker.
You could try asking for help on the #metallb channel on the Kubernetes slack, where there are people other than me who can assist.

@danderson How does one get access to kubernetes slack?

Hi @grssam ,
How about the progress of your issue. I also happen the similar issue.
Just know the component assign a used ip that it had been assigned to physical machine or router.
When I delete the error ip owner (which has same value at external-ip), these all kubernetes machine return normal, can access internet now.
look below check result and operation.


Publish binaries to TAS

We need to provide the ability to publish applications as compiled binaries.
Currently, there is a Publish option available in VS.  Can we leverage this UI and add a TAS option or do we need to create our own "Publish to Tanzu Application Service" option?

The docs seem to recommend the following deployment strategies:

Type of .NET App
Buildpack

.NET Core pushed to Linux stack
.NET Core

.NET Core pushed to Windows stack
Binary

.NET Console (not recommended to run on CF; see footnote)
Binary

ASP.NET MVC
HWC

ASP.NET Web Forms
HWC

ASP.NET WebAPI Apps
HWC

Windows Communication Foundation (WCF)
HWC

Footnote:

Console apps are not recommended to run on Cloud Foundry because they do not normally run as a single instance and are not highly available. If you need to run a console app on Cloud Foundry, see Console Applications in the .NET Cookbook.

@zzori-theoriginal made this comment on a different ticket -- reposting here so it doesn't get lost!

Possible Useful Articles:

https://docs.cloudfoundry.org/buildpacks/binary/index.html
https://docs.cloudfoundry.org/devguide/deploy-apps/deploy-app.html
https://github.com/cloudfoundry/binary-buildpack

Helpful Articles:

https://tanzu.vmware.com/content/blog/run-your-legacy-net-in-the-cloud-with-tanzu

https://docs.pivotal.io/application-service-windows/2-9/using.html

https://docs.pivotal.io/application-service/2-9/buildpacks/binary/index.html

https://dotnet-cookbook.apps.pcfone.io/headless/console_app/

https://docs.pivotal.io/application-service/2-9/buildpacks/hwc/index.html

https://docs.pivotal.io/application-service-windows/2-9/develop.html

We may want to leave it up to the user to select a "Runtime Identifier" to use with the dotnet publish command... I think this should line up with whatever is running in Cloud Foundry?

We've been able to publish a dotnet new webapi app from binaries by following these steps:

dotnet new webapi -n my-app
cd my-app
dotnet publish -o ./publish -r win-x64 -f net5.0

^ the target framework moniker at the end of this command should match the <TargetFramework> value in the app's .csproj file

vim manifest.yml

---
applications:
- name: dotnet-new-webapi-9-15
  stack: windows
  command: cmd /c .\dotnet-new-webapi-9-15 --urls=http://*:%PORT%
  health-check-type: http
  buildpacks:
  - binary_buildpack

cd publish
cf push -f ../manifest.yml

Important consideration: dotnet publish may not work for full-framework apps


fix: add missing devices to devices with notch list

Added some devices that have notches to the list of devices with notches.

v2.1.3 :rocket:


This one bypassed the list

Great list but this one came through:
gaibanda
There is also a couple of comments with phone numbers only. For example:
01961089455
How do you block that one?

Is it possible for you to post the entire contents of the comment, including the IP, email, and URL that was submitted? (Which ever of those are available, anyway.) Having a bit more context of who submitted the spam might help create keywords for the blocklist.

@splorp i already deleted these messages. My bad. The next time I will put all these informations when I create a new issue.


Investigate perf regressions from 2.0 related to change tracking

Specifically:

Add/Attach/Update/Remove including Range, Children, and Parent variations
QueryChildren

I found that this issue was closed automatically and no "closed-fixed" label was added.
Re-opening in 2.1.0 milestone in case it wasn't intentional, so we can decide explicitly if we have done enough to mark it as fixed.

Fixed by #11493 PR


Minor fixes in documentation

Small fixes in the documentation in 'Configuring an Application and its Environment', 'Request Binding with Resource Controllers' and 'ORM Snippets'.

Thanks!


Incorrect parsing for plist files with empty  values

If you have a plist file with an empty <string></string> value like this:
<plist version="1.0">
    <dict>
        <key>DTPlatformBuild</key>
        <string></string>
        <key>DTPlatformName</key>
        <string>iphonesimulator</string>
        <key>DTPlatformVersion</key>
        <string>10.0</string>
    </dict>
</plist>

The parser will ignore it and interpret the next key as the value, giving an output like this:
{
    "DTPlatformBuild":"DTPlatformName",
    "iphonesimulator":"DTPlatformVersion",
    "10.0": ...
}

This only affects reading plain-text XML plist files.
When reading binary encoded plist files the problem does not appear.
Writing both text and binary plist files appears to be fine.

+1

+1

This package basically just provides a (hopefully) simple API around three other packages; bplist-parser, bplist-creator, and plist. Since it's only applicable to plain text documents, I'd be willing to bet the issue is related to https://github.com/TooTallNate/plist.js/issues/79 (@cmaart already commented there as well). There's also a PR that claims to resolve the issue here: https://github.com/akofman/plist.js/commit/4163d73f148fd1efffc06366729202c3c7b65184
I'm going to close this out for now, but feel free to continue the discussion here for future readers if you wish.


Set up continuous integration.

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

Should we also add a status badge to the readme?

Should we also add a status badge to the readme?

Done ✅


Radius calculation

In the Bubbles component I'm having trouble setting up my radiusScale (line 36) correctly so that the different datasets can all use the same scale. Two issues I'm seeing:

when rendering data.instagram (Index.svelte line 214), for some reason any node with a d.radius value over 100k is being assigned a negative  value.
when rendering data.reddit (Index.svelte line 163) the radius for the nodes is too large, even though I set a min and max in pixels.

Thanks Matt! Much prefer this syntax but I was having too many errors when I tried to implement it, will keep it for tomorrow.
The metrics used for radii are comparable within a dataset but not across datasets, so calculating it as a fixed overarching value wouldn't work (circles representing studies would be miniscule compared to reddit comments).
I was able to fix the negative values, when parsing CSVs I was importing the radius column values as strings rather than integers.


Unable to obtain the API seller account !

Hello,
I'm trying to use your API since more than 3 weeks. I sent 3 e-mails to<EMAIL_ADDRESS>I tried to send email to the support team from my seller account twice... And absolutely no answer !
What's the point to publish an API if nobody can use it because we cannot obtain account information in order to connect ?
Moreover, you give a link for your documentation (https://marketplace.ws.fd-recette.net/docs/api/2.6/index.html) which is not public neither : nobody can access it without login/password...
Regards,
Lionel

Hello, did you manage to receive the codes to access the documentation ?
https://marketplace.ws.fd-recette.net/docs/api/2.6/index.html
Merci !

Hi,
Having the same problem...
How can we get access to the docs?

Hi,
Having the same problem...
How can we get access to the docs?


huginn website agent  can not scrape this link,any resolution？

huginn website agent  can not work on this link：
https://s.weibo.com/weibo?q=haha&typeall=1&suball=1×cope=custom:2021-08-01:&Refer=g&scope=ori
while any download tool can easily download the web content ，why？

The reason is because the entire page is Javascript.  There's no HTML that the Website Agent can scrape.  You'll need to use something like Headless Chrome executed with the Shell Agent or the Phantom Js Cloud Agent to get HTML to analyze.

The reason is because the entire page is Javascript. There's no HTML that the Website Agent can scrape. You'll need to use something like Headless Chrome executed with the Shell Agent or the Phantom Js Cloud Agent to get HTML to analyze.

thanks，but the entire page is not Javascript. you can use any download tool to download it‘s web content，while huginn get nothing


Switch to gradle-maven-publish-plugin

https://medium.com/@vanniktech/publishing-your-android-kotlin-or-java-library-to-mavencentral-e22f343b9659

I’m going to try to upstream a fix to this first.

https://github.com/vanniktech/gradle-maven-publish-plugin/pull/9


in every js lesson page i have TypeError: Object.assign is not a function

in every link from the "basic javascript" section i go(and the later Javascipt lessons, not jQuery lessons or anything else), i have a
TypeError: Object.assign is not a function
two days ago these links worked and i already have completed these lessons but now they're not working. all of them.

i did reset the code
made a hard refresh using the F5 key
deleted localStorage
tried the incognito mode
still i have the same error.

and this error is in my console too.
i tried with my Galaxy Note 4:
in Dolphin browser, i have the error.
but in chrome there is no error!

Is this only on your mobile device that this happens or can you also reproduce this error on a desktop browser?

on my laptop:
Chrome gives:
TypeError: Object.assign is not a function
Firefox gives:
chai is not defined
on my mobile:
Chrome works without an error
Dolphin browser gives:
TypeError: Object.assign is not a function

Looks like I included that in here without thinking. I'll replace it soon.

Im also having this issue. On any new and completed waypoints and bonfires I get this error.
Im using Chrome on an andriod phone. Tried clearing data, refreshimg and requesting desktop version.

Same issue!
Browser - Firefox(desktop)
TypeError:Object.assign is not a function!

Same issue for me since yesterday ...
(Chrome : TypeError:Object.assign is not a function!)

Same TypeError on Safari

Same issue..From yesterday...!
Chrome gives: TypeError: Object.assign is not a function
Firefox gives: chai is not defined

Thanks everyone. A patch is on the way.


Apply KNN algorithm

Apply KNN algorithm for supervised machine learning for the prediction. In the output accuracy and confusion matrix must be printed. Show the accuracy is improved or not . Plotting should be done between hazardous and non hazardous earth's nearest object.

I would like to work on this issue. Kindly assign it to me

Ok I am assigning you. All the best for your work.

@KewlShubh What is the update , for your work. Is there in issues you are facing ?

@KewlShubh today is the last day for the competition . Submit your work as soon as possible.


[ENH] added ds001771_sub-36 dataset and FS derivatives

added ds001771_sub-36 dataset and FS derivatives

Merged too fast: https://app.circleci.com/jobs/github/nipreps/dmriprep/714
Any fast ideas of what might be happening @garikoitz ?

nvm - I think I got it (61763d3d73635ddc4faf7e2162f324d722d94b59)

Sorry, never at first try...
On Tue, 4 Feb 2020 at 15:16, Oscar Esteban<EMAIL_ADDRESS>wrote:

nvm - I think I got it (61763d3
https://github.com/nipreps/dmriprep/commit/61763d3d73635ddc4faf7e2162f324d722d94b59
)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/nipreps/dmriprep/pull/67?email_source=notifications&email_token=ABCZAV7UOMAOPMKLPCXSTU3RBHZMHA5CNFSM4KIWRGMKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEKZRQLI#issuecomment-582162477,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABCZAVZ4KNFVEIIWMRMVPITRBHZMHANCNFSM4KIWRGMA
.


Select projects and collect notes for initial swagmap projects

Someone at the institute (@jaylarson85?) should select the project(s) we most want to be able to use for a demo of Swag. For each project, we'll need all the details that should go into a swagmap for it, including:

Descriptions of each point that should go on each map

I'm unclear from our discussion whether the idea is for the points to be objectives within a project or projects within a curriculum, or something in between

The student notes for each point

In other words, the information students should see when they click that point on the map, or a link to that information

During today's call, we started a document to draft schemas for swagmaps and related structures (swagifacts, etc). It still needs work, and this seems like a sensible place to track that work.
https://docs.google.com/document/d/1lwBTB4F9ne_pyHcfccsTdeRMYJmDRrzC9kGugN1HSe0/edit#heading=h.z845ktsruoy5

@jaylarson85, do we have detailed lesson plans / exercises for these? If so, can you provide links?

Working on getting those together.
On Wed, Jun 17, 2015 at 8:53 PM, Brad Smith<EMAIL_ADDRESS>wrote:

@jaylarson85 https://github.com/jaylarson85, do we have detailed lesson
plans / exercises for these? If so, can you provide links?
—
Reply to this email directly or view it on GitHub
https://github.com/tunapanda/swag/issues/12#issuecomment-112890920.


Translations for Simplified Chinese, Traditional Chinese and Polish

Added translatale="false" to country codes as they shouldn't be translated to the other languages.

Great works! Thank you for the PR although I'm a bit too late.


Bump Zenoh to 0.11.0

The PR is to update Zenoh to 0.11.0, and also use tokio instead of async_std.

If you'd like to do the testing we discussed of threadpool of tokio runtimes vs tokio multi-threaded runtime and want further review, let me know.

I'm replacing threadpool with mutlit-threaded runtime, but still blocked by some issues.
I will bump up-rust first, so it would be better to include Zenoh 0.11.0 in code. I'll merge the code first and do the test in the following PR.


Add information about WSL on Windows machines

Just a reminder to add information about using WSL on a Windows machine when docker is not a viable solution, as commented in #2007.

Added in #2040


PICO iframe doesn't load

The PICO iframe doesn't load anymore due to changes in the init json:

The minimap (https://pico.geodan.nl/pico/minimap/map_windmodule.html) now i) allows you to select a municipality, province or RES region, ii) change the default / start values of restrictions, and iii) read the restriction values when closing the iframe (in order to be able to reopen the iframe a second time with the same restrictions as before).
@sfp-kemp are you able to fix this?

@redekok volgens mij werkt dit nu goed!


Multiple secret fetcher support

What does this PR do?
multiples secret fetcher at the same time
Motivation
In some situations is necessary to use more than one secret fetcher. For example, to fetch api_key we could use Vault, but to fetch database secrets we could use AWS Secrets Manager. Also, one team will provide the application to fetch api_key, and another will provide the application to fetch database secrets.
Based on that, multiple secret fetcher support will help to achieve this goal.
Additional Notes
This change does not change the current secret fetcher functionality.

Thanks for your contribution, we will validate that this feature fits with the agent. We will keep you posted as soon as possible.

Thanks for your contribution @pretchu.
After reviewing the PR and the use case, we think that this PR would add too much complexity (and future maintenance effort) in the Agent compared to its benefits. To achieve a similar goal with the current Agent, you could implement the dispatching logic (to various secret binaries) within the main secret executable that the Agent is configured to use.
Therefore, I'll go ahead and close the PR.
If there's more demand for a similar feature/use case in the future, we can revisit this and discuss how such a use case could be best addressed in the Agent.


Using include variables in dependencies.path list fails on terragrunt 0.32

Previously using include.inputs.my_variable was allowed in dependencies.path list.
include {
  path   = find_in_parent_folders()
  expose = true
}

dependencies {
  paths = [
    include.inputs.rg_dir
  ]
}

With the changes done in terragrunt 0.32.X the same code gives the following error:
ERRO[0000] Error processing module at '/home/df/source/tg-bug-test/child/terragrunt.hcl'. How this module was found: Terragrunt config file found in a subdirectory of /home/df/source/tg-bug-test/child. Underlying error: /home/df/source/tg-bug-test/child/terragrunt.hcl:12,19-26: Attempt to get attribute from null value; This value is null, so it does not have any attributes., and 1 other diagnostic(s)
ERRO[0000] Unable to determine underlying exit code, so Terragrunt will exit with error code 1

The same code works with no error in terragrunt 0.31.11.
Attached I've included a sample test case: tg-bug-test.zip

This is actually the result of fixing another bug as part of the expose, where the dependency fetching interfered with terragrunt stack generation when expose = true.
Reverting that actually breaks the primary use case that multiple includes is meant to solve. Note that from the configuration parsing order standpoint, this is actually the correct behavior as you are trying to access inputs, which is parsed after dependencies and this includes what is available at what stages of parsing.
I'll need to think a bit about what is the best way to fix this, as a naive reversion will break run-all when multiple include blocks are in use.
In the meantime, is it possible to workaround this limitation by using local? E.g., can you assign rg_dir to a local and then use that local in the inputs and the exposed include (include.locals.rg_dir instead of include.inputs.rg_dir)?

In the meantime, is it possible to workaround this limitation by using local? E.g., can you assign rg_dir to a local and then use that local in the inputs and the exposed include (include.locals.rg_dir instead of include.inputs.rg_dir)?

Currently we'll stick to 0.31.11 so we wont have to make any changes to our code. In the long term local could be an option depending on the solution you decide to take for this issue.

we wont have to make any changes to our code.

Just to double check, does the included config (essentially the root config) have dependency or dependencies block?

NOTE: #1817 should resolve this issue for you, assuming your root config doesn't have any dependency or dependencies blocks defined.

Hi there, we do indeed use dependencies and even need the dependencies outputs to build the path.
So going by the parsing order means we couldn't just change to use local as I original stated since it's not valid to use dependencies in locals.
Our use case is having one main infrastructure "repo" with several child tenants "repo"  that receive values trough a bridge shared module that's used for base values on tenant deployments.
The actual code we is something like this:
primary_data_rg_dir  = "${local.geography != "_global" ? local.geo_dir : local.svc_dir}/${dependency.main.outputs.vars[local.geography].data_primary_locality}/resource-group"
failover_data_rg_dir = "${local.geography != "_global" ? local.geo_dir : local.svc_dir}/${dependency.main.outputs.vars[local.geography].data_failover_locality}/resource-group"

So the only current workaround I'm seeing is to just "hardcode" the path values that come from the main "repo" dependency to each tenant's locals .

The proposed fix is merged, but that does not address the use case described above. The core feature request here is to allow constructing dependency config_paths based on other dependency outputs.
Unfortunately, as it is now, I don't see if there is a nice way to support this without breaking the other use case, which I believe is much more common than this one. I believe this will be a difficult nut to crack, and not sure if we would ever get to it...

Just to give an update on our end, we ended up going with local by copying some key values instead of depending on remote state.
With that, we're able to create all paths in the base locals making them usable everywhere.
It does mean any change to those values will require replicating the change to a dozen repos.


is possible to use slides with smaller width sizes?

i mean, i need to use slides with smaller sizes than screen width

Fix it plz!!!!1

<3

Still no way to do that ?


Implement Forgot Password feature

When a user forgot's their password, they should be able to:

Click on Forgot Password link in Login/Registration pages
Show  Forgot Password form with "email" field.
If email not exists show "Account Not Found with this email" error.
If email exists, create a reset_token(UUID) and send a link "/reset-password?email=email&token=reset_token"
When user clicks on that link, validate whether (email + reset_token) is valid. If valid, then show a form with Password and confirm password fields. Upon submission, update the password and set token column to NULL. If invalid, then show error "Invalid password reset request".

@sivaprasadreddy I am interested to work in this issue

@sivaprasadreddy Create PR for the change

Done.


Merge keylime-docs into main keylime repo

This commit merges the keylime-docs repo into the main keylime repo while preserving the history of both.

Codecov Report

Merging #1017 (5f93eb2) into master (c26a729) will increase coverage by 6.01%.
The diff coverage is 67.88%.

:exclamation: Current head 5f93eb2 differs from pull request most recent head fcff369. Consider uploading reports for the commit fcff369 to get more accurate results

Flag
Coverage Δ

packit-e2e
64.64% <67.88%> (+7.62%)
:arrow_up:

testsuite
48.00% <33.94%> (+20.91%)
:arrow_up:

unittests
13.24% <6.42%> (+0.09%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

keylime/ima/ima.py
65.23% <ø> (+1.51%)
:arrow_up:

keylime/keylime_agent.py
69.39% <0.00%> (+1.94%)
:arrow_up:

keylime/measured_boot.py
66.10% <0.00%> (+33.89%)
:arrow_up:

keylime/revocation_notifier.py
51.29% <ø> (ø)

keylime/secure_mount.py
95.31% <ø> (ø)

keylime/tenant.py
68.40% <0.00%> (+2.99%)
:arrow_up:

keylime/tornado_requests.py
69.23% <0.00%> (-3.75%)
:arrow_down:

keylime/tpm/tpm2_objects_test.py
98.64% <ø> (ø)

keylime/tpm/tpm_abstract.py
82.05% <ø> (+5.12%)
:arrow_up:

keylime/tpm/tpm_main.py
71.75% <51.42%> (+5.39%)
:arrow_up:

... and 26 more

Do we want to fix the DCO before merging? Also do we want to keep the full history or do some cleanup before merging?

Do we want to fix the DCO before merging?

I started that but it led to conflicts (since a couple of filenames exist in both before the latest reorg in keylime-docs) and I thought rewriting history just to add sign-offs might be a little much. But I'm open to further exploring that.

Also do we want to keep the full history or do some cleanup before merging?

What kind of cleanup did you have in mind? Just copying them in as-is is pretty simple, but I thought keeping the full history might be useful. But again, I'm willing to change my mind on that.

Abandoning this way of doing it. After dealing with the merge conflicts because there were several files that shared the same paths, I realized that the history is actually preserved in the old repo if we ever need it. So just making that one read-only and copying the files into the keylime proper repo is a better solution.


Add support of int128 and time types to fc::variant.

@afalaleev commented on Fri Sep 28 2018
For better support of DB types by chaindb

GolosChain/cyberway#19

PR #6


[STORM-3966] Allow reflection in JDK11 test for storm-sql-hdfs; update guava version

What is the purpose of the change
mvn test warns of illegal reflection in jdk11+
How was the change tested
Unit test and github actions

Yes. I will create a Jira to add the script. I mostly rerun the command and use the generated license file anyway!


Revamp the services page

I would like to create individual cards for each element in the services page and on hovering these elements, they open up with a flourishing animation making look a lot more engaging

I would like to work on this issue under gssoc'23


nixos/wireguard: Fix typo in error message

generatePrivateKey -> generatePrivateKeyFile

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

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

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

ported in release-20.03


Fixed typos in flag descriptions and updated example to include compatible

This PR makes suggestions to update the descriptions for the flags and also add the -compatible flag to the readme.

To address the failures seen here within the Go analysis please review PR(#6). It removes the:

control-coupled function error
unused parameter error

Thank you very much for this PR.


defaultHttpResponseTransform tries to parse as Json "text/plain" that isn't Json

I'm submitting a ...

[x ] bug report
[ ] feature request
[ ] other (Please do not submit support requests here (see above))

Current behavior:

function defaultHttpResponseTransform(data, headers) {
  if (isString(data)) {
    // Strip json vulnerability protection prefix and trim whitespace
    var tempData = data.replace(JSON_PROTECTION_PREFIX, '').trim();

    if (tempData) {
      var contentType = headers('Content-Type');
      if ((contentType && (contentType.indexOf(APPLICATION_JSON) === 0)) || isJsonLike(tempData)) {
        try {
          data = fromJson(tempData);
        } catch (e) {
          throw $httpMinErr('baddata', 'Data must be a valid JSON object. Received: "{0}". ' +
          'Parse error: "{1}"', data, e);
        }
      }
    }
  }

  return data;
}

In defaultHttpResponseTransform() if the response data passes the isJsonLike() function, the function tries to transform the data using fromJson().  This may fail if the data isn't actually Json.  If a server sends contentType "text/plain" with data "{a}" or "[a]" for example, these will result in angular throwing an error.
Expected / new behavior:

If the contentType is "text/plain", the defaultHttpResponseTransform should return the data without trying to change it.
Angular version: 1.6.4

If it was too big of a behavior change to stray from the documentation

If the Content-Type is application/json or the response looks like JSON, deserialize it using a JSON parser.

Then the function could continue to attempt to parse as json what it thinks looks like json.  However, if that fails and the Content-Type is specified and not application/json, then it should just return the data rather than throwing an error about it not being valid json.

Changing this generally would be a breaking change for people that serve JSON without the correct content type. But returning plain text if the content type is text/plain seems reasonable.

Is anyone working on this one? Do you need a PR?

I don't think anyone is. It's your if you want to take it :smiley:

@Narretz Do you believe that we have to check data with isJsonLike() for every content-type except text/plain or to skip the isJsonLike() at all?

@katsos
I assume we check every content-type for JSON-ness is because at the time many servers were sending JSON in plain text responses. Or something to that effect.
So the problem is that we definitely have to continue parsing text/plain responses for JSON-ness. Stopping this would be a breaking change.
However, what we can do is return the plain response if json parsing fails and the content type is text/plain.
However, this would still mean that text/plain content that looks like JSON is still parsed, so you wouldn't be guaranteed a plain text response.
For this reason, I now think it's better not to touch this code. Instead, if you have a plain text response, you should add your own response transformer. Wdyt?

@Narretz I think for sure that a JSON-like plain-text doesn't have to throw an error if it is not parsable from JSON parser.
So with "no-breaking-change" in mind, I agree to return the response unprocessed if content-type is everything else than "application/json".
But isn't confusing for those programmers who develop their APIs with content-type in mind and their clients end up with a json object instead of the declared content-type? (if content looks like a JSON of course)

But isn't confusing for those programmers who develop their APIs with content-type in mind and their clients end up with a json object instead of the declared content-type? (if content looks like a JSON of course)

Yes it is. But it's the status quo. And I assume there are not many people who use plain text APIs, otherwise this issue would have appeared more often.

Status quo is to use proper Http-headers also but yes I get what you are saying. I will reply with my PR 😃


Compilation Failure After Latest PR Merge - Missing et_feeder.h

Describe the Bug

A clear and concise description of what the bug is.

Hi,
I am experiencing a compilation failure after fetching the newest version. It seems that the GitHub Actions workflow is also failing with the same error.
Here is the error message:
In file included from /home/runner/work/astra-sim/astra-sim/astra-sim/system/RecvPacketEventHandlerData.hh:11,
                 from /home/runner/work/astra-sim/astra-sim/astra-sim/system/StreamBaseline.hh:13,
                 from /home/runner/work/astra-sim/astra-sim/astra-sim/system/BaseStream.cc:8:
/home/runner/work/astra-sim/astra-sim/astra-sim/system/collective/ChakraImpl.hh:15:10: fatal error: extern/graph_frontend/chakra/et_feeder/et_feeder.h: No such file or directory
   15 | #include "extern/graph_frontend/chakra/et_feeder/et_feeder.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.

Thank you for your assistance!
Best regards,

Hi,
I encountered the same issue before merging the latest PR. You might want to try using the HotI 2024 version (https://astra-sim.github.io/tutorials/hoti-2024/installation#starting-docker-container). I was able to successfully compile with that version.
Hope this helps!

I meet the same issue. It makes me so sad.

I meet the same issue. It makes me so sad.

Hello, do you know if the compilation error has been resolved?

Hello, do you know if the compilation error has been resolved?

This issue has been resolved.


iOs not calling on('registration') on first run.

Expected Behaviour
'registration' event should be called every time you open the app.
Actual Behaviour
The first time you run the app in iOs you get push permissions dialog but 'registration' event is not called. If you open the app again, it gets called and you get the registrationId.
Reproduce Scenario (including but not limited to)
I have added console.logs to show every steep taken in the code related to push plugin and init is being called correctly but 'registration' event is not called when I run for the first time the app. The second and successive times it gets called correctly.
Steps to Reproduce
Run an Ionic App with Push plugin in iOs with command: ionic cordova run ios --device -lc
Platform and Version (eg. Android 5.0 or iOS 9.2.1)
iOS 11.2
(Android) What device vendor (e.g. Samsung, HTC, Sony...)
iOs emulator (iPhone X)
Cordova CLI version and cordova platform version
cordova --version: 7.1.0
cordova platform version ios: 4.5.4

Plugin version
cordova plugin version | grep phonegap-plugin-push: 2.1.2

Sample Push Data Payload

Sample Code that illustrates the problem
  init() {
    const pushOptions: PushOptions = {
      android: {
        icon: 'push_icon',
        iconColor: '#dd9933',
        senderID: 'Firebase/GCM Sender ID'
      },
      ios: {
          alert: 'true',
          badge: true,
          sound: 'false'
      }
    };
    const pushObject: PushObject = this.push.init(pushOptions);
    console.log('Initialized push notifications');

    pushObject.on('registration').subscribe(registrationData => {
      console.log('on(registration) called!');
      this.handleRegistration(registrationData)
    });

    pushObject.on('notification').subscribe(notificationData => {
      this.handleNotification(notificationData)
    });
  }

Logs taken while reproducing problem
First run:
[12:13:54]  console.log: Angular is running in the development mode. Call enableProdMode() to enable the production mode.
[12:13:55]  console.log: Ionic Native: deviceready event fired after 1659 ms
[12:13:55]  console.log: Initializing push notifications
[12:13:55]  console.log: Initialized push notifications
Second run:
[12:16:50]  console.log: Angular is running in the development mode. Call enableProdMode() to enable the production mode.
[12:16:51]  console.log: Ionic Native: deviceready event fired after 992 ms
[12:16:51]  console.log: Initializing push notifications
[12:16:51]  console.log: Initialized push notifications
[12:16:51]  console.log: on(registration) called!
[12:16:51]  console.info: Push Token received: elY-RDq2EVk:APA91bHGXODogVmrMYc...

Also experiencing a similar issue on iOS simulator. The permission dialog appears, and immediately after the on('error') event is called with the following [not particularly helpful] error message:

{"line":62,"column":50,"sourceURL":"http://<IP_ADDRESS>:8100/plugins/phonegap-plugin-push/www/push.js"}

After clicking the 'Allow' button on the dialog, the registration event is never triggered - even though permission has been granted.
Code excerpt:

  private askPermission() {

    const options: PushOptions = {
      android: {
        senderID: ENV.push.android.senderID
      },
      ios: {
        alert: 'true',
        badge: true,
        sound: 'false'
      }
    }
    console.log('initializing');
    const pushObject: PushObject = this.push.init(options);
    console.log('initialized');

    pushObject.on('registration').subscribe(
      (data: RegistrationEventResponse) => {
        console.log('registered');
        this.savePushToken(data.registrationId);
      }
    )

    pushObject.on('error').subscribe(
      (error: EventResponse) => {
        console.log('error', JSON.stringify(error));
        this.pushError();
      }
    )

  }

I have an almost identical set up to @fsanzv , except for phonegap-plugin-push - I'm using version 2.1.3

@jaybloke you can't test push on the simulator. You need to use a real device.

Thanks @macdonst - knew the notifications wouldn't work on the sim, but didn't realise that registration was outlawed too.
Thanks for putting me out of my misery!

We are having this issue only in simulator, in real devices works as expected.
Thank you @macdonst.


Alternate RecentChanges access

Instead of adding hooks for every possible activity, maybe use this hook - https://www.mediawiki.org/wiki/Manual:Hooks/RecentChange_save
Alternatively, this may be an even cleaner way to push the updates: https://www.mediawiki.org/wiki/Manual:$wgRCFeeds

Thanks! Looks good - however I currently have no time to make much changes to this extension, just minor additions / changes. Changing underlying structures to something new usually introduces new bugs. I'll however come back to this card should some of the hooks I use start deprecating or breaking in later versions of MediaWiki.


Multiple undefined variables found with flake8

Found 198 errors using:
flake8 examples/ --count --select=F82 --show-source --statistics
which shows "undefined" errors (variables, modules, ...), which seem important enough.
62 are in ./tofu/data/_spectrafit2d.py
but they are a little bit everywhere. I could try and guess some fixings, but probably it should be done by you @Didou09
Let me know if I can give you a hand. I could try to look what I can fix and make a PR based on that ?
I will close issue #452 since it's just an example of this bigger issue

Very good initiative, thank you !
I'll look at these next week (Tuesday or Wednesday I think) and let you know which parts you could do


Hashed attributes in css

It looks like you pushed the css with generated hashed attributes:
.v-step .v-step__arrow[data-v-7c9c03f0] {
.v-step[data-v-7c9c03f0]
...

which does not apply the styles at all. Can you fix this soon plz?

nvm, had something in cache

Hehe no worry.
You had me scared when I saw the notification at first tough :eyes:


Maven plugin's includeGeneratedAnnotation does not support jakarta.annotation.Generated

When using both includeJsr303Annotations and includeGeneratedAnnotation, it seems one still gets javax.annotation.(processing.)Generated instead of jakarta.annotaiton.Generated.

So I guess javax has become jakarta, and now we have another Generated annotation to throw into the mix :)

Current annotations are part of the JRE, thus shouldn't require additional dependencies.
Would throwing in jakarta.annotation in the mix mean yet another flag, as both:
includeJsr303Annotations and useJakartaValidation are about validation api:
https://github.com/joelittlejohn/jsonschema2pojo/blob/8e772064776c51376d63c35674e6dd5a0d5e123c/pom.xml#L373-L382
Whereas jakarta.annotaiton.Generated would be about annotations:
<dependency>
    <groupId>jakarta.annotation</groupId>
    <artifactId>jakarta.annotation-api</artifactId>
    <version>2.1.1</version>
</dependency>

:weary:

It's funny how an annotation is such a trivial thing, just a tag with no behaviour at all, but it's bounced around so many different locations over the years. Why can't they just include this trivial annotation in Java's core API!

I think it's mostly political reasons between Java Core and J2EE.

Hi any updates on this? @joelittlejohn This is blocking JDK17+ compatibility which is required for CVE fixes.

FWIW, https://github.com/OpenAPITools/openapi-generator/blob/master/modules/openapi-generator-gradle-plugin/README.adoc has the same problem (i.e. javax vs jakarta) - and overcomes it with a single flag "useJakartaEe= true/false" to determine if it uses javax.* or jakarta.* style annotations.

In the meantime, I've overcome this issue with the following bit of Gradle;
    // Until https://github.com/joelittlejohn/jsonschema2pojo/issues/1461 is fixed, correct the package for the "@Generated" annotation
    tasks.named('generateJsonSchema2Pojo') {
        finalizedBy('makeJakartaAnnotationsCompatible')
    }

    tasks.register('makeJakartaAnnotationsCompatible') {
        doLast {
            ant.replaceregexp(match:'javax.annotation.processing.Generated', replace:'jakarta.annotation.Generated', flags:'g', byline:true) {
                fileset(dir: 'build/generated-sources/js2p', includes: '**/*.java')
            }
        }
    }

@joelittlejohn after reading #1586 as well, I'm thinking a PR for an useJakartaAnnotation to just cover this scenario would be a cleaner solution - thoughts on this proposal?

Is someboy taking over this issue? It would be great to have a way to fully use jakarta instead of require javax just for the generated annotation. Thanks in advance!


Enhancement: Keep packages sorted in composer.json

This PR

[x] keeps packages sorted in composer.json

💁♂ For reference, see https://getcomposer.org/doc/06-config.md#sort-packages.

needs rebase

Thank you, @fzaninotto and @pimjansen!


Make puppeteer respect proxy settings

If http_proxy/https_proxy environment variable is found, then puppeteer should respect it.
I had to make this change to make it work through my corporate proxy.

@kennethaasan I haven't really tracked the master, but does aws-azure-login respect proxy settings now ?

Hi @psibi,
It looks like Github closed all the PR's when I renamed the master branch to main. Can you create a new PR for the main branch?


Quiver usage sawtooth

The usage stats show very strange sawtooth patterns for Quiver servers.

Each line represents one country, all small countries with low expected usage.  Each point represents one hour.
Perhaps there is an infinite loop bug that can cause clients to produce this kind of linearly escalating traffic, which rises until something stops it.
This could also be the result of a bug that has long since been fixed, if some clients haven't updated.

How did you generate this graph?

It's the cloudfront "viewers" graph for countries way down the list.  I still see this behavior, more or less, in recent data.


Fix and simplify testing

Uses babel as a plugin to avoid  having to create commonjs build on disk before running tests.
Also, fixes browser tests (https://github.com/ramda/ramda/pull/2589#issuecomment-405263241), so closes #2597.

CI fails on Node 8 with npm 5.6.0 due to https://github.com/npm/npm/issues/16726.

I would definitely like to see browser testing back.  And I have no initial qualms with this.
Elsewhere we are discussing what versions of Node to support.  I think that will drive whether we can do this or not (although possibly different browserify options would make it pass even in older Node?)

The discussion is, as far as I'm aware of, whether to support Node 6, which is in maintenance (not active) lts.
This code fails only on 0.12, which is end-of-life since 2016-12-31.

Anyone have objections, @ramda/core ?

:bowtie:  :shipit:

#2589 should be merged first, otherwise every commit will fail CI on Node 0.12.

I downgraded Mocha, so that it works on Node 0.12, and this PR can be merged now.


Add 'hamler repl' command to run the interpreter of hamler

Implement an experimental interpreter for the hamler language.

Done. make repl to start the interpreter.


Why are windows worker nodes limited to Docker EE?

I'm trying to add a windows worker node to a Rancher 2.3.0 launched cluster but it failed to install due to:
FATA: Only support with Docker EE

Why is it requiring Docker EE? Is there any particular reason why can't it work with Docker CE?

For now, Docker EE is the requirement runtime of the Windows K8S cluster: https://kubernetes.io/docs/setup/production-environment/windows/intro-windows-in-kubernetes/#container-runtime.
https://github.com/rancher/rancher/blob/21be0ba445c273a504ba11468f16a594a4eed456/package/windows/bootstrap.ps1#L188-L191
If you want to try on Docker CE, you could skip all verifications when adding a Windows worker:
PowerShell -NoLogo -NonInteractive -Command "& {docker run -e WITHOUT_VERIFICATION=true -v c:/:c:/host rancher/rancher-agent:<version> bootstrap --server <server> --token<token> --ca-checksum <ca-checksum> --worker | iex}"

I tried to use Docker CE. It doesn't work when I tried to start a docker container.
Maybe you can have a try by following https://kubernetes.io/docs/setup/production-environment/windows/user-guide-windows-nodes/
Note:
If you have a Windows Server license, you will automatically get the Docker EE license

Thanks for the pointers!
But do you known why, technically, Docker EE is required? I'm asking because the last time I've read about this, the EE-basic was technically the same as Docker CE, but without support.

@loganhz  does it mean
Windows server will come docker EE installed ?  so licensing is not version dependent
currently docker ee is  installed manually via MSFT , which lets you to install latest or force a version.
Install-Module DockerMsftProvider -Force
Install-Package Docker -ProviderName DockerMsftProvider -Force

https://hub.docker.com/editions/enterprise/docker-ee-server-windows
Maybe this is helpful. @GehanPanapitiya

Docker EE and soon containerd are the only Microsoft supported runtimes for Windows containers.

Docker EE and soon containerd are the only Microsoft supported runtimes for Windows containers.

do you have a rough date for this change over ?

@loganhz does it mean Windows server will come docker EE installed ? so licensing is not version dependent
currently docker ee is installed manually via MSFT , which lets you to install latest or force a version.
Install-Module DockerMsftProvider -Force
Install-Package Docker -ProviderName DockerMsftProvider -Force

I followed the command as yours plus version requirement. But same error produced.


An Obsidian plugin that runs Quartz 4 npm commands from a user-friendly menu

Is your feature request related to a problem? Please describe.
Managing Quartz 4 after the initial setup is somewhat counterintuitive for users like me with little npm experience. The current workflow is having either Obsidian and a terminal open at the same time, or having that terminal integrated within Obsidian via a plugin, neither of which is, in my opinion, all that user-friendly for most people.
Describe the solution you'd like
A hopefully official Obsidian plugin that adds an Advanced Tables-esque tab with buttons that run most essential Quartz commands (sync, update, revert, create etc.) and support for configuring extra parameters (like -d, --port, --no-push etc.)
Describe alternatives you've considered
I don't see a better integration method than an Obsidian plugin, however I do understand that the same can also be achieved with command palette (Cmd/Ctrl+P) shortcuts.
Additional context
I know maintaining a whole plugin alongside the SSG itself is a whole lot of work, but one can dream)

Closing as @benschlegel will maintain this separately from Quartz :) Keep me posted and I can help signal boost once you're done.


Make submit vote end constraint configurable

Related issue: https://github.com/openlawteam/tribute-ui/issues/192
I would not expect this to be merged back upstream to Snapshot Hub core, but you never know if it will be needed. Additionally, with possible, upcoming structural DAO changes in tribute-contracts to allow for off-chain sponsorship (with subsequent on-chain validation of sponsorship), this feature may be short-lived.
Expected behavior
A configurable option to set the voting end time as open-ended (not taken into account when submitting a vote). This helps when the Snapshot Hub voting period needs to be ignored and another time period is used instead (e.g. on-chain voting period).
IGNORE_VOTE_END_CONSTRAINT=true

Actual behavior
Today, the voting proposal's payload.end stops any vote outside the voting end time from being submitted. This is typically OK, but when mixing in on-chain proposal's it's not flexible as we may want to look at the on-chain proposal's voting period.
Steps to reproduce the behavior
Submit a vote outside of the payload.end time.

Implemented by #45


Add requirement for pip version to pyproject

This PR fixes this issue as well as this related issue and adds a requirement for the pip version to be at least 22.

https://github.com/guardrails-ai/guardrails/issues/735


Add Typescript support

Introduces the --typescript flag, closing #10.
Some notes:

the rollup and babel config is for now what I used so far. Will update to agreed upon best practices as soon as https://github.com/embroider-build/embroider/pull/1099 is approved and merged! Therefore still a draft...
ESLint is configured for TS. Again what I have been using commonly.
tsconfig.json is using the setup that ember-cli-typescript is also generating recently, delegating to @tsconfig/ember.
this also sets up the infrastructure for the addon to use and expose Glint types. Which isn't official, and hasn't been RFCed. But I figured people using the latest stuff here w/ TS will probably want it? 🤔 Can remove, if that seems too controversial. But I love it 😍. Or add an additional --glint flag? Related: https://typed-ember.gitbook.io/glint/using-glint/ember/authoring-addons and https://github.com/typed-ember/glint/issues/338
the test-app generation delegates the --typescript flag to the official app blueprint (which in the latest canary version does support that as well). If the used Ember CLI version is not one that support it, then a warning message is shown, and the user has to manually setup TS in the test app.

To Do

[ ] we need https://github.com/ember-cli/ember-cli/pull/10048
[x] add tests

@dfreeman thanks for your review! I addressed the directly actionable points (marked the discussion threads as resolved). I think at this point only the role of types/ is up for debate. I think I would prefer internal-types/ myself...

I have now incorporated the latest outcome of https://github.com/typed-ember/glint/issues/439 here!

Thanks so much @simonihmig, this is great to have.


fix(climc): add server option cloudpods

What this PR does / why we need it:
add climc server option : hypervisor cloudpods
Does this PR need to be backport to the previous release branch?:
<!--
If no, just write "NONE".

If don't know, write "UNKNOWN", and let the reviewer decide.

If yes, write the release branches name in the below format and submit the related cherry-pick PR:
- release/3.9

/cc @ioito @zexi

/lgtm


bmi160_get_fifo_data() Missing Frames

Hi,
We are setting up continuous read of the FIFO and reading after 100 mSec. To do this we are setting up acquisition using (result checks, etc removed for brevity):
`
struct bmi160_dev m_sensor;
m_sensor.id = 0;
m_sensor.interface = BMI160_SPI_INTF;
m_sensor.read = bmi160_spiReadRegister;
m_sensor.write = bmi160_spiWriteRegister;
m_sensor.delay_ms = bmi160_spiDelayMs;
bmi160_init(&m_sensor);
m_sensor.accel_cfg.odr = BMI160_ACCEL_ODR_800HZ;
m_sensor.accel_cfg.range = BMI160_ACCEL_RANGE_16G;
m_sensor.accel_cfg.bw = BMI160_ACCEL_BW_NORMAL_AVG4;
m_sensor.gyro_cfg.power = BMI160_GYRO_SUSPEND_MODE;
m_sensor.accel_cfg.power = BMI160_ACCEL_NORMAL_MODE;
m_sensor.aux_cfg.aux_sensor_enable = 0;
bmi160_set_sens_conf(&m_sensor);
memset(&m_fifo_frame, 0, sizeof(bmi160_fifo_frame));
m_fifo_frame.data = m_fifo_buff;
m_fifo_frame.length = 7 * 100; // 100 frames at 7 bytes each.
m_sensor.fifo = &m_fifo_frame;
bmi160_set_fifo_config(BMI160_FIFO_ACCEL | BMI160_FIFO_HEADER,	BMI160_ENABLE, &m_sensor);
`
And then we loop while executing (while using printfs to show the number of frames read and mSec between frame reads - code highlights for brevity):
struct bmi160_sensor_data accel_data[100]; // ~7 bytes per frame
uint8_t accel_frames_req = 100;
uint8_t accel_index;
m_sensor.delay_ms(100);
bmi160_get_fifo_data(&m_sensor);
bmi160_extract_accel(accel_data, &accel_frames_req, &m_sensor);
We are noticing that we can read 81 samples with loop frequency of 102-103 mSec (100 mSec delay, plus time for the bmi160_get_fifo_data() call, printf() calls, e.t.c.). At ODR of 800 Hz, we would expect to see 82 or 83 samples in over 102 or 103 mSec. It appears that we are losing 1-2 samples per loop. We expect that reading the FIFO might take 1-2 mSec and we are wondering if the FIFO fill pauses during FIFO reads? We did not expect this limitation. Perhaps there Is a special technique required to ensure that FIFO fill continues at a rate of 800 Hz even when periodic FIFO reads are occuring (at a period of just over 100 mSec in our case)?
Any help is greatly appreciate.
Mark J
delay_ms(100);

@mjanke67,
Could you check the value m_fifo_frame.length after reading the FIFO data? This member should hold the number of bytes read from the FIFO.
Also, under typical scenarios, one would use the  FIFO watermark interrupt set at around 700 bytes in order to have the sensor data in sync.

The m_sensor.fifo->length always matches the number of frames read. So if we read 81 frames, the length in bytes is 81 * 7 or 567 bytes. No frames are being marked as skipped.
We could use an interrupt to initiate the call to read the FIFO, but would expect that the behaviour would be the same (i.e. only what triggers the read would change).
I think the fundamental question is whether reading from the FIFO prevents the FIFO from being filled (i.e. while the read occurs).

Hi @mjanke67,
The filling of the FIFO is not stalled while a read is in progress. However, it has to be noted that the FIFO length register is updated after the FIFO is filled with a new sample. It is possible that the length read before reading out the FIFO was only 567 and the rest of the bytes were filled in during the read.
The FIFO read API first reads the number of bytes in the FIFO and a few more depending on whether the sensor time was requested. These additional bytes are defaulted to 25 bytes as observed here BMI160_FIFO_BYTES_OVERREAD. You can override this by defining a custom length in your C flags. For example -DBMI160_FIFO_BYTES_OVERREAD=40.

Hi,
I understand your comment and it matches what we are seeing. We can always overread as your suggest, but how do we know how many Frames are actually in the buffer after the read is completed?
Should we clear the buffer (fill it with 0x00) before each read and then look for non-zero byte values to determine how many frames have been read? This should be fine as long as the header within each frame is guaranteed to be non-zero. We cannot rely on the data to be non-zero as it is possible (however unlikely) that x, y and z data are all zero in a frame.
Thank you for your quick responses. You have been very helpful.
Mark J

Hi @mjanke67,
The FIFO parser APIs like bmi160_extract_accel(accel_data, &accel_frames_req, &m_sensor); can be used to extract how much of valid frames are available in the read FIFO. The variable accel_frames_req after the call of the API contains the number of valid frames.
Regarding filling the FIFO with zeroes, there is possibly no impact to the current parsing code in place due to the fact that parsing stops at the FIFO length that was read before the FIFO readout.

Hi,
The accel_frames_req shows the number frames matching the raw buffer length (567 bytes in our case correlates to 81 frames) - it does not show a value that we would expect at the end of a 103 mSec read process (82 or 83 frames at least). When we look at the raw data, bytes after index 566 are all "0x00. We are worried that the frame 82 data that should be read in a 103 mSec FIFO read period is lost. If we read every 103 mSec, both the raw buffer length (m_sensor.fifo->length) shows 567 and accel_frames_req shows 81 when we expect a raw buffer of 574 and accel_frames_req of 82.

Hi @mjanke67,
As mentioned earlier, the FIFO read API will not read more than the bytes it saw in the FIFO length register even though bytes were filled during the read. In order to read the remaining data in the FIFO, you will have to read it twice consecutively. Note that you have parse and save the frames before the next consecutive FIFO read.

Hi,
We are reading every 103 mSec continuously and reading only 81 frames each time. After 100 cycles (time 10300 mSec) we would expect to see 10300 mSec * 0.8 or 8240 frames (ODR = 800), but we are only seeing 8100 frames. We are missing 1 or more frames per cycle and these frames are not accessible on subsequent cycle reads. Because frames come in every 1.25 mSec and we believe that it is taking just over 1.25 mSec to read, we are worried that reading from the FIFO causes it to stop being filled (my original question).
If sample data added to the FIFO during a read was available during the next read, we would expect to read 81 samples during the first FIFO read (t=103 mSec) and then 82 samples every other read (t=206 mSec, t=309 mSec, etc), but we are not. We always see 81 samples every read (m_sensor.fifo->length = 567 and accel_frames_req = 81).
Thanks,
Mark J

Hi,
We have tried some additional approaches.
We tried 2 successive bmi160_get_fifo_data() calls. The first call was made to read the buffer contents (approx 80 frames) and the second was used to quickly read any frames that were received during the first call. The second returned quickly as there were only 1-2 samples to read. But, we were still reading fewer samples than expected over a time span.
Next, we tried to "overread" the raw buffer. Because the DBMI160_FIFO_BYTES_OVERREAD value only applies to overreading timing info, it could not be used. As an alternative, we disabled the reset of  dev->fifo->length to bytes_to_read within the bmi160_get_fifo_data() implementation within bmi160.c (we commented out the lines below).
if (dev->fifo->length > bytes_to_read) {
/* Handling the case where user requests
more data than available in FIFO */
dev->fifo->length = bytes_to_read;
}
... and we were able to read 1-2 ADDITIONAL samples than were returned from get_fifo_byte_counter(). For example, if we specified a FIFO dev->fifo->length of 600 when there were only 560 bytes in the FIFO (returned from get_fifo_byte_counter()), we saw valid data up to 574 bytes (2 more samples read from using dev->read() than indicated by get_fifo_byte_counter()). Passing the 574 bytes to bmi160_extract_accel() yielded 82 valid frames. This indicated that we could read FIFO data that entered the FIFO after the call to bmi160_get_fifo_data() started. This was positive. Unfortunately, when we overread the FIFO, the next cycle yielded fewer samples within the FIFO within the call to bmi160_get_fifo_data().  get_fifo_byte_counter() returned 1 sample less than expected. It had been 100 mSec since the last overread, but only 553 bytes were in the FIFO.
Last - we tried to read when servicing a Watermark interrupt instead of a polled read.
All approaches yielded similar results. We seem to be unable to read 800 frames a second at ODR 800. We can only read approx 790 frames. We are reading on a period of just over 100 mSec (delay_ms(100)).
Can Bosch provide a simple example that iteratively reads Accell or Gyro data with no missing frames?
Thanks in advance.
Mark J

Hi,
Have we lost support on this issue? We have been spending days trying to get data acq from the BMI160 to work without good results. Any help is appreciated.
Should we get in touch with a Bosch FAE through our reseller?
Mark J

Hi @mjanke67,
We are working on duplicating the issue but haven't been able to see the observations reported by you. We would recommend getting in touch with one of our FAEs to help look more closely at your setup.
In the meantime, could you check

enabling the gyroscope even though you don't read it's data over the FIFO?
the data ready interrupt's period?

Hi,
Thank you for the update. We have made progress in figuring out the issue.
We enabled BMI160 Sensor Time and identified that we are seeing the correct number of frames for 39 uSec ticks within the Sensor Time values stored at the end of each FIFO at FIFO read time. We will now proceed to check our Linux time and compare it to the Sensor Time. We strongly suspect that the BMI160 Sensor Time is correct and the problem is with the Linux time function implementation on the TI AM335x host that we use on our product.
One option is to use a scope on the SPI lines to identify FIFO read cycle times and see if they align with the Linux clock or the BMI160 clock. A faster approach (we think) is to simply measure host processor ticks instead of clock uSec values.
I will update this thread when we have identified the problem with our time measurement.
Thanks,
Mark J

Hi,
We have altered our Linux time calcs and we are seeing Linux FIFO acq times that are close to the BMI160 Sensor Time values. Linux time is not very accurate (relatively speaking) and this has been a challenge, but we believe that we have confirmed the BMI160 clock is accurate.
I think that we can close off this issue.
Thank you for your responses to our questions.
Mark J


clear up docs for development environment setup (#3965)

Fixes: #3965
Tried to cleanup the docs as noted in the original issue.

Thank you again @stloma!


Vision regarding a reporting API

When discussing with @MarieS-WiMLDS regarding the feature in https://github.com/probabl-ai/skore/issues/834, I came to realize that when it comes exploring the output of experiments, we are closed to a "reporting" feature.
Let me elaborate:
In skrub, we have a TableReport feature that should bring insights about the input data, or intermediate data after some transformation.
In skore, we implemented the CrossValidationReporter that aims at reporting insights from a cross-validation experiment by aggregating results from different splits.
In #834, the vision of the ModelAnalyzer is to report insights of a single model (cross-validation reporter could actually use several ModelAnalyzers internally).
One thing that I envision is to be able to compile a (semi-)automatic report that should leverage this tool: show figures with interlaced text, provided by a user/ourself/LLMs. In some sort, it would be an abstraction to consolidate these different report. skrub-UI is the tool to quickly explore any chosen dimension behind those lower level reports.
Therefore, towards this vision, I'm wondering if an early API shift would be to rename the current tools:

CrossValidationReporter becomes CrossValidationReport,
ModelAnalyzer becomes ModelReport,
the potential meta-reporter could be SkoreReport that rules them all.

Why Report and not Analyzer or Reporter: I personally don't like Analyzer since it is not easy to say and looks pretty Frenchy. skrub has coined Report as a precedent and aligning with its name seems more appropriate that going with a 2 letters longer word that is Reporter.

Maybe what's still missing is the idea of investigation / experimentation.

I see the reporting as a first step. My statement "show figures with interlaced text, provided by a user/ourself/LLMs" is where investigation / experimentation kicks in. Since I would expect user to be to do it in the first iteration, I would be fine with the "only" reporting aspect.
Once we have the reporting, we probably can better assess how to implement the investigate/experiment part and thus "market" it.

In your opinion, does SkoreReport is the new name for the views?

Could you provide me concretely what are "views" just to be sure to answer properly the question.
With a brief look at the code, what I can say is that in my thinking SkoreReport would be a user facing class that might aggregate other report, e.g.
skore_report = SkoreReport(
    cv_report=CrossValidationReport(estimator, X, y),
    data_report=TableReport(X, y)
)
skore_report.open()
skore_report.html()

(do not pay attention on the API, it is not thought throw).
I think that "items" and "views" are generic words and should not be used by our users. However, I understand if a SkoreReport is translated into an "item(s)"/"views" to feed the skore-UI. So with my current understanding the SkoreReport is a Python interface to be used by our data scientist while the items and views are abstraction to convert to user facing report in something that we can use in the UI (and store). But I might miss a point by overlooking details of the current "items"/"views" implementation.

There are different types of reports and we should be mindful of which one we pick, depending on the context.
Initially, at the beginning of the project, what is now called a "View", was called a "Report". We decided to downgrade "Report" to "Views" because we thought reports are used to communicate with stakeholders.
But since CrossValidationReporter, it looks like the semantic of "Report" has evolved. Reports come back with the meaning of a "technical report of some operation". And it seems quite natural for everyone, so that's fine.
I badly want a better name for "Items"… Currently items are raw results and reports of key operations. In the future, we can see more types of items: warnings, datasets, etc.
The vision is to store all kinds of things and give the user the ability to list and search through all those things that were captured by skore.
I think we should discuss more the idea of making Views an implementation detail. Or more generally, the vision should be aligned and understood.

CrossValidationReporter becomes CrossValidationReport,
ModelAnalyzer becomes ModelReport,
the potential meta-reporter could be SkoreReport that rules them all.
fine by me!


Improve code abstraction with SQLAlchemy

Use the  module SQLAlchemy to increase database.py abstraction.

all of methods at database.py uses SQLAlchemy to work and this is really better than before. We have classes for representate the tables too.


Log warnings when the connected APM Server verison is not supported

Codecov Report

Merging #271 into master will decrease coverage by 0.1%.
The diff coverage is 15.38%.

@@             Coverage Diff              @@
##             master     #271      +/-   ##
============================================
- Coverage     73.23%   73.12%   -0.11%
  Complexity     1153     1153
============================================
  Files           123      123
  Lines          4337     4343       +6
  Branches        429      432       +3
============================================
  Hits           3176     3176
- Misses          954      960       +6
  Partials        207      207

Impacted Files
Coverage Δ
Complexity Δ

...stic/apm/report/IntakeV2ReportingEventHandler.java
72.06% <0%> (-0.82%)
27 <0> (ø)

.../co/elastic/apm/report/ApmServerHealthChecker.java
53.84% <18.18%> (-9.8%)
3 <0> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update eb3742d...78863f6. Read the comment docs.


Docs: Windows CPU and Memory Affinity

Description
Place holder for https://github.com/kubernetes/enhancements/issues/4885

https://github.com/kubernetes/kubernetes/pull/125296
https://github.com/kubernetes/kubernetes/pull/124285
https://github.com/opencontainers/runtime-spec/pull/1258
Issue

KEP: https://github.com/kubernetes/enhancements/issues/4885

/sig windows
/sig node

Hi @jsturtevant  👋
Just a reminder to take a look at Documenting for a release - PR Ready for Review to get your PR ready for review ahead of the "Ready for Review" deadline on Tuesday November 19th 2024 18:00 PST.
Thank you!

Hi @jsturtevant 👋 ,
A quick reminder to get your PR ready for review before the deadline, Tuesday November 19th at 18:00 PDT. For additional information, refer to: Documenting for a release - PR Ready for Review.
Thank you!

/assign @tengqm

/assign @marosset @aravindhp

Technical LGTM provided above /lgtm

Technical LGTM provided above
/lgtm

@tengqm could we get your final review/approval on this one? thanks!

Technical and Docs LGTM noted above
/approve


Serialization removes content of include (FUGR)

AG:

We have includes that originate in one function group and are reused in several other function groups.
This has worked fine so far. Now AG is upgraded and the include is now seen as empty locally although it contains code.

Top definition of FUGR

It seems the serialization is ignoring the content. It also sees the changer as UNKNOWN.

https://github.com/abapGit/abapGit/pull/5134
If an include belongs to a different function group, it is only serialized as part of that function group.

On a side note, I consider it not good practice to reuse function group includes this way. Make reusable code a stand-alone include or better put the code in a class 😉

Since i have worked with Abap (I'm a R/2 guy), these best practices have changed over time.
Just wrapping everything in classes has not increased readability for me, but with that i am probably a dying breed.
If this is the way that serialization will stay (it worked fine with the release from 3 months ago) i will have to adapt even though this means changing AddOn packaging.

I like the good old includes, too.
However, the old approach had two big disadvantages:

It would serialize reused SAP includes -> big no-no for public repos
It would serialize reused includes multiple times -> trouble if one of the copies is changed
Both are a potential performance issue as well.

In short, the new approach is the way to go.

Ok, will rename the includes outside the fugr.


Samples not parsed

The following samples cannot be parsed by your script (while SentinelOne's one works) :
1538339863779e04fa6578bd24fdba8e397d0563ac1776e0e941ebf17a15cec6 42a96ff5ba5f5f7e07f296237d9dc04db1f4de200e5d5106b140d36c6e06fc10 6ffacc3363ffa170b1c06a3f0f9612d968397ebcbf754e54431f0ea6d45ee124 ac6f07d03eb84a5ffa3149766e1746a4645faf89b376540af2919c914592ee7e
Files attached (password: infected)
m.zip

3 of these samples have a configuration in clear text and not xored, not sure why but b5fb9c8919ce5e59b4d0f0b962a72e759295bd0c adds support for it :
$ python ../github/analyze.py<PHONE_NUMBER>779e04fa6578bd24fdba8e397d0563ac1776e0e941ebf17a15cec6
Unknown config command 48
dns                            False
ssl                            True
port                           443
.sleeptime                     9300
.http-get.server.output
.jitter                        15
.maxdns                        244
publickey                      30819f300d06092a864886f70d010101050003818d003081890281810091f28b9c4f213d42a1ba5aca5870a080c58f41563a190273c957dca8f63e4bdad04b931caef73357a81d8fbbd4a054a6503d5bbce0d1599546050d2a6cba001cd5990cf8a05cb559f7067b09d5776be5c653516087f5b60577c9731014bc8cf5a0bdb9c19158455dfc84ad8f5d1232d55a511e613f1f1abaacbea9661b83c603020301000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
.http-get.uri                  node.podzone.org,/safebrowsing/rd/mODJ1ES0Wz7G1LVVRyywNg4L5QVZny5yJ-5jGntzPtRUD
.user-agent                    Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.111 Safari/537.36
.http-post.uri                 /safebrowsing/rd/BVVleixqc2yE9XEvpzil9yefZaygJpsth
.http-get.client
GAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflaPREF=ID=Cookie
.http-post.client
GAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflatU=Cekla82O8iJoVojPREF=ID=Cookie
.post-ex.spawnto_x86           %windir%\syswow64\rundll32.exe
.post-ex.spawnto_x64           %windir%\sysnative\rundll32.exe
.pipename
.cryptoscheme                  1
.dns_idle                      0
.dns_sleep                     0
.http-get.verb                 GET
.http-post.verb                POST
shouldChunkPosts               0
.watermark                     0
.stage.cleanup                 0
CFGCaution                     0
.proxy_type                    2
killdate                       0
text_section                   0
process-inject-start-rwx       64
process-inject-use-rwx         64
process-inject-min_alloc       0
process-inject-transform-x86
process-inject-transform-x64
48                             7

(Which is an APT32 related sample from 2017 if I am right)
The last file 42a96ff5ba5f5f7e07f296237d9dc04db1f4de200e5d5106b140d36c6e06fc10 is likely corrupted, but I am not sure why and how : strings like %d.%s.post.cdn.%x%x.%s.www6.%x%x are %d)%s.post.cdn)%x%x)%s.www6)%x%x in this sample, like if some dots were replaced by ), but not all of them. It is the case also for the configuration and it may also explain the invalid PE format. So I am tempted to consider it corrupted until I find another sample with the same issue, unless you specifically need to extract this configuration (in that case, xoring everything with 0x2e should give you some weird corrupted conf).
Thanks for sharing !

3 of these samples have a configuration in clear text and not xored, not sure why but b5fb9c8919ce5e59b4d0f0b962a72e759295bd0c adds support for it :
$ python ../github/analyze.py<PHONE_NUMBER>779e04fa6578bd24fdba8e397d0563ac1776e0e941ebf17a15cec6
Unknown config command 48
dns                            False
ssl                            True
port                           443
.sleeptime                     9300
.http-get.server.output
.jitter                        15
.maxdns                        244
publickey                      30819f300d06092a864886f70d010101050003818d003081890281810091f28b9c4f213d42a1ba5aca5870a080c58f41563a190273c957dca8f63e4bdad04b931caef73357a81d8fbbd4a054a6503d5bbce0d1599546050d2a6cba001cd5990cf8a05cb559f7067b09d5776be5c653516087f5b60577c9731014bc8cf5a0bdb9c19158455dfc84ad8f5d1232d55a511e613f1f1abaacbea9661b83c603020301000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
.http-get.uri                  node.podzone.org,/safebrowsing/rd/mODJ1ES0Wz7G1LVVRyywNg4L5QVZny5yJ-5jGntzPtRUD
.user-agent                    Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.111 Safari/537.36
.http-post.uri                 /safebrowsing/rd/BVVleixqc2yE9XEvpzil9yefZaygJpsth
.http-get.client
GAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflaPREF=ID=Cookie
.http-post.client
GAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflatU=Cekla82O8iJoVojPREF=ID=Cookie
.post-ex.spawnto_x86           %windir%\syswow64\rundll32.exe
.post-ex.spawnto_x64           %windir%\sysnative\rundll32.exe
.pipename
.cryptoscheme                  1
.dns_idle                      0
.dns_sleep                     0
.http-get.verb                 GET
.http-post.verb                POST
shouldChunkPosts               0
.watermark                     0
.stage.cleanup                 0
CFGCaution                     0
.proxy_type                    2
killdate                       0
text_section                   0
process-inject-start-rwx       64
process-inject-use-rwx         64
process-inject-min_alloc       0
process-inject-transform-x86
process-inject-transform-x64
48                             7

(Which is an APT32 related sample from 2017 if I am right)
The last file 42a96ff5ba5f5f7e07f296237d9dc04db1f4de200e5d5106b140d36c6e06fc10 is likely corrupted, but I am not sure why and how : strings like %d.%s.post.cdn.%x%x.%s.www6.%x%x are %d)%s.post.cdn)%x%x)%s.www6)%x%x in this sample, like if some dots were replaced by ), but not all of them. It is the case also for the configuration and it may also explain the invalid PE format. So I am tempted to consider it corrupted until I find another sample with the same issue, unless you specifically need to extract this configuration (in that case, xoring everything with 0x2e should give you some weird corrupted conf).
Thanks for sharing !

Closing this ticket now, but feel free to reopen it if you have more unparsed samples


Preserve the author of original commit while merging PRs

What happened
This is related to PR #1621

The PR was posted on Oct 18, 2018, 7:48 AM PDT
It received the first comment from reviewer on Oct 26, 2018, 7:14 PM PDT
A manual merge was done on Oct 26, 2018, 7:16 PM PDT, which override the original author of the commit in 9ea87744446cbbf17fb19ceb1aaa656eae5f4f93

This way the author doesn't get credit for the contribution, and is not welcoming to new contributors.
How to fix
There are several options:

Create/Update Collaborator Guide to ensure author information is retained while doing git push. This issue has been discussed online before (example)
Give some time to the author to respond to the review comments.

Sorry about that.
I reverted the commit and reapplied it with the Co-authored-by: tag based on your suggestion. Hopefully that resolves things.
I wasn't aware of the Co-authored-by tag, so I'll certainly use that for all manual merges, however to avoid situations like this in the future, if you see CI failures please resolve them before waiting for a maintainer code review.


TCPTracker only tracks IPv6

Is it planned to extend the shipped TCPTracker with IPv6 support? What are the challenges of implementing it? Can i / someone help with that in some way?
Thanks

The biggest road block I see at the moment is we have not yet got around to the new/improved usage api mentioned in issue #161. You maybe able to implemented ipv6 support without that, but I don't know.
One way you could really help out is by writing unit tests tcptracker (if you are interested of course).
Regardless of which way you go please provide unit tests for your work.