Spin Build Targets Check SIP

Rendered

I was thinking a bit more about the custom triggers thing, and wanted to take a moment to align our understandings.
For me, the main value of this work is kind of a technology proof for validating against a world once we have a world (or, more broadly, a set of acceptable worlds).  That's a prerequisite for target environments, but there's a whole lot of additional work in defining what an environment is and how we understand it.  Again consider the "I want to target SpinKube 3.2" scenario.  SpinKube 3.2 isn't a world: it's a mapping of trigger types to worlds.  We will need to understand from some source what that mapping is.
The custom triggers discussion seems to cross over into the "understand the environment / mapping" problem, but in a way that is very specific to the "the version of Spin I am running here and now" environment.  Yes, we want to be able to validate for that local environment for sure.  But I'm wondering if we should punt on solving the mapping problem for that "local Spin" environment until we can consider it alongside other environments.
As I say, that's just my envisioned purpose and scope for this leg of the work.  It may be (it seems likely) that other folks have a different vision and scope, so I'd like to crisp up what that is and how it fits into the eventual goal.

But I'm wondering if we should punt on solving the mapping problem for that "local Spin" environment until we can consider it alongside other environments.

I would be fine with us making the decision to hold off on solving this for custom triggers (for now) until we firm up our longer term goals (those of which are still not entirely clear to me at the moment).

I would also be aligned to solving this for the set of known worlds and not tackle custom triggers and worlds in the first go.

@radu-matei Thanks.  I have a technology POC that uses the wac libraries to validate a component or module against the HTTP target world.  The trouble is that wac currently only validates matching exports, not matching imports (see https://github.com/bytecodealliance/wac/issues/127).  Now there is an alternative, to use wasm-tools component targets, which does verify imports but... which doesn't produce useful error messages on validation failure.
Now, we can and will invest in those upstream projects to improve this - but at the moment, @fibonacci1729 is on point for that, and he is also trying to land component dependencies in Spin.  Given that, and that component dependencies will affect how target validation works, the current proposal was for him to prioritise component dependencies, then resume the upstream and target worlds stuff.
@fibonacci1729 hope this is an accurate representation of the current thinking - please correct me if not!


CNF-4018 Enable Flexible Registration for Multiple PTP Events clock-class-change,status and os-sync

Enable Flexible Registration for Multiple PTP Events
This adds the ability to subscribe to multiple events.
For each Publisher/Subscriber you create separate AMQ sender/listener objects
Signed-off-by: Aneesh Puttur<EMAIL_ADDRESS>

/gtm


pass other flags to the server call

Hi Ruben
Looking at this html code, specially the --nope flag declared at the end.
eye
     input.n3
     input2.n3
     rules.n3
     --query
     query.n3
     --nope

It make me think is possible to pass other flags to the server call, but looking at the code it doesn't really seem to be the case. Or I'm  missing something?
thanks in advance!.

It make me think is possible to pass other flags to the server call, but looking at the code it doesn't really seem to be the case. Or I'm missing something?

It's definitely possible, but not implemented at the moment. The default flags of the server (which include nope) are assumed.


Need cleanup of agents data for agents that were removed already

For now, data about all the agents since netchecker application deployment remains in TPR even if some agents were removed already. Need to make periodic cleanup of agents data for such agents in TPR (and in server memory if required).

This issue is valid for TPR case only (no issue when working with etcd).


Separate multi-line usage description with newlineCharacterSet.

Related to #17
Based off this comment.
Apple’s documentation for newlineCharacterSet

:cool: :cat2:


Initial use of multilivox

Initial commit of Input/output for multilivox support.
Sample calibration file:
{
    "calibration": {
        "47MDL9T0020193": {
           "identity" : "true"
        },
        "47MDL9S0020300":
        {
            "order" : "ROW",
            "inverted" : "TRUE",
            "data":[
                0.999824, 0.00466397, -0.0181595, -0.00425984,
                -0.0181478, -0.00254457, -0.999832, -0.151599,
                -0.0047094,0.999986, -0.00245948, -0.146408,
                0, 0, 0, 1
            ]
        }
    },
    "imuToUse": "47MDL9T0020193"
}

Closed in favour of #23


Stream HL7 over websockets

TODO:

[ ] Docs

coverage: 94.241% (-0.03%) from 94.272% when pulling 3d3e9641633129f80bf7b0ec6b546d0f77bb2e17 on cody-stream-hl7-over-websocket into 588113c288900969f606b10a27789b778abfd9d7 on main.

Related: https://github.com/medplum/medplum/discussions/1490

https://github.com/medplum/medplum/discussions/1490


REDFOR F5s at Lochini unable to start up

Since they are red units at a blue base, you cant interact with the ground crew. Unable to start up w/o air comp.
Suggest either making one of the close-by airports red and move all red units there, or just remove the F5s from Lochini.

I did not think of that. well easiest would then be to have them there with engines running imo

Yea that would work too! And a center tank

solved


memoize_articles=False still caches

Setting memoize_articles to False still caches articles. The docs say that setting it to False shouldn't cache anything.
This can cause problems when scraping a site such as wayback machine. Multiple sites would have the same web.archive prefix and so the cache would consider them to have the same feeds. So grabbing another source would use the previous source's cached feed.
Setting memoize articles to False should prevent this, but cache is still being set.
Maybe just some code like this in source would allow memoize_articles=False to do this:
`
@utils.cache_disk(seconds=(86400 * 1), cache_folder=ANCHOR_DIRECTORY)
def _get_category_urls(self, domain):
"""The domain param is necessary, see .utils.cache_disk for reasons.
the boilerplate method is so we can use this decorator right.
We are caching categories for 1 day.
"""
return self.extractor.get_category_urls(self.url, self.doc)
def set_categories(self):
# changed code:
# only use the private cached function if memoize_articles is False
if self.config.memoize_articles:
urls = self._get_category_urls(self.domain)
else:
urls = self.extractor.get_category_urls(self.url, self.doc)
self.categories = [Category(url=url) for url in urls]
`

You can also write this small function if you don't want to edit the actual source
from newspaper import settings as np_settings

def purge_newspaper_cache():
    folder = np_settings.ANCHOR_DIRECTORY
    for filename in os.listdir(folder):
        file_path = os.path.join(folder, filename)
        try:
            if os.path.isfile(file_path) or os.path.islink(file_path):
                os.unlink(file_path)
        except Exception as e:
            print('Failed to delete %s. Reason: %s' % (file_path, e))


node-exporter port 9100 conflicts with traefik

Uyuni container use port 9100 for node exporter. The same port  is used by traefik default configuration to exports it's own metrics, so there is a conflict and traefik fails to start:
2024/06/13 09:02:29 traefik.go:80: command traefik error: error while building entryPoint node-exporter: error preparing server: error opening listener: listen tcp :9100: bind: address already in use

The failure can be hidden because kubernetes keeps running the traefik with the old configuration.
https://github.com/uyuni-project/uyuni-tools/pull/215
https://github.com/traefik/traefik-helm-chart/blob/master/traefik/values.yaml#L704
@cbosdo @witekest

Do we need node exporter in Kubernetes deployments? It provides hardware metrics of the underlying node so I think it's out of scope for SUMA server monitoring.
It should be safe to remove node exporter from the image for Kubernetes deployments, disable the service or remove the port mapping.
For container metrics we could switch to cAdvisor.

For now, disable the port export for kubernetes. Next step is to try cAdvisor and decide what and how we should support. cAdvisor is part of packHUB only, we may need to support it on our side.


Shu11698/vector tiled layer

Vector Tiled. Layer Sample

Sets map with a given ArcGISVectorTiledLayer
Currently the ExportVectorTilesJob returns a Job.Status.FAILED [Link]. Due to the code expects the Item resource cache directory path to be an empty directory.
Settings the Basemap sometimes would throw: Object is already owned. [Link]

Updates:

Fixed tile packages issue. Code now functions without bugs/crashes

Todo:

Clear style resource files on app launch
Download .vtpk file programmatically
Fix the Basemap layer.copy() workaround.

Updates:

Resolved comments from @TADraeseke
Created README.md and README.metadata.json
Need to update the provision_from, provision_to, and redirect_from in the metadata file.

Changes:

Updated README.metadata.json
Replaced package name to arcgisvectortiledlayercustomstyle in gradle, .kt and Manifest files
Added README.md suggestions

Updates:

Updated screenshot to 700 x 400 with no toolbar. png
Removed the dodge_city.vtpk file
Updated function level comments to use Kotlin convention instead of param


chore(trunk): release 1.2.8

:robot: I have created a release beep boop
1.2.8 (2024-03-07)
Bug Fixes

ga: update Dockerfile platforms to upload both architectures (c653166)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/Nos-Futurs/distroless-nginx/releases/tag/v1.2.8 :sunflower:


Team11 Review: Missing unique identifiers for requirements

@samm82
name: Team 11 Review
about: Missing unique identifiers for requirements
Summary
The functional requirements have numbering but aren't specifically provided tags for each requirement, while individual non-functional requirements are missing identifiers all together and are only defined by their section. Per the "Document Organization" section of the SRS rubric, all requirements should have a unique identifier. This will make it easier to reference individual requirements both in other sections of this document, as well as in future related documents and in design discussions.
Deadline
05/02/2024
Estimated Work Hours
0.5 hrs

FRs and NFRs all given unique identifiers.


Automatic cell sizes

In react virtualized, there is a CellMeasurer component which can be used to have dynamically calculated cell sizes. This is very convenient if you have elements whose dimensions change after the initial render (e.g. if you have an input field).
Have you thought about supporting this use case?

If you'd like to code this, I'm happy to accept a pull request. I believe you could do it by adding an API to set an override function for the getElementSize function.


Transforming IEnumerable<Option> to IEnumerable

What would be the correct way to transform an IEnumerable of Option to simply an IEnumerable of T?
Let's say for example that I have a list of values and I only care about the ones that definitely have values and would like to both filter out the ones that are None as well as cause the type signature to match.

Hi,
The currently recommended way to do this is:
var values = options.SelectMany(option => option.ToEnumerable());

However, as of version 4 which is just around the corner, this will be provided as an extension method directly:
using Optional.Collections;

...

var values = options.Flatten();

The exact name of the extension method is still something I am considering though, and it might end up as options.Values() instead, to allow a similar extension method for Option<T, TException>  exceptional values (options.Exceptions()).
Hope it helps.
/Nils

Cool, thanks!


A bunch of errors while trying to run threader.py

The script has been working for me for a long time, but since downloaded it again recently it gives me many errors while trying to run it.
Is it just me or a bug in the script?
Thank you

Really isn't helpful if you don't include what the errors are, what you are trying to do, etc.
I just downloaded it to a fresh Ubuntu 20.04 machine with Python3.8 and it works just fine.

I'm getting OSError: [Errno 24] Too many open files type of error. The log file itself is quite large with many details.
I thought maybe email it to use by an .txt file, but while looking for your mail I'm getting<EMAIL_ADDRESS>

You can try changing line 73 to 200 instead of 1500. It's likely a local resource error with the increase in thread count that I recently added.

Great, thank you

See https://github.com/dievus/threader3000/issues/14
Closing as it's already been reported. In the end, it is an issue with your resources.


Allow server routes to defer back to the Nuxt renderer

Describe the feature
If you have the desire to write a server route which should only conditionally return values (think of accept header being set to application/json) and otherwise let Nuxt render the route, it isn't straightforward to do so.
Having a way to "defer back to the Nuxt renderer", ideally as "default" behavior when not returning a value or when calling a specific method would be helpful
Related:

https://github.com/nuxt/nuxt/issues/25885
https://github.com/nuxt/nuxt/discussions/27102

Additional information

[X] Would you be willing to help implement this feature?
[ ] Could this feature be implemented as a module?

Final checks

[X] Read the contribution guide.
[X] Check existing discussions and issues.

cc: @pi0

This is similar to server action support. If needed, I suggest registering a passthrough router in a middleware however I would strongly advise approaching it as an opt-in module (for use-cases really need overlapping routes) rather than built-in feature because of additional to middleware complexities it adds and one route acting differently.

Maybe that's something which should be documented then as recipe + pointing out when to use / when not use it?

Since this is a diverged usage/behavior (not a configured usage), I would suggest using a module that can both document and at least try to handle edge cases better.


fix case break due to cluster -> compute group

Proposed changes
Issue Number: close #xxx

run buildall


Physiological Noise Correction

Hello all,
Are there currently any modules for physiological noise correction? Something like AFNI's RETROICOR, FSL's PNM, or TAPAS's PhysIO Toolbox?
Thanks

Hi,
I am not aware of any.
Vale,
Tibor
Auer, Tibor M.D. Ph.D.
Research Fellow in MRI
Department of Psychology
Royal Holloway University of London
Egham
TW20 0EX
United Kingdom
<EMAIL_ADDRESS>[cid:image002.jpg@01D04F5F.0CADAB60]Tibor.Auer<EMAIL_ADDRESS>[Email signature]
From: NADRIGOL<EMAIL_ADDRESS>Sent: Wednesday, February 22, 2017 7:26 PM
To: rhodricusack/automaticanalysis<EMAIL_ADDRESS>Cc: Subscribed<EMAIL_ADDRESS>Subject: [rhodricusack/automaticanalysis] Physiological Noise Correction (#98)
Hello all,
Are there currently any modules for physiological noise correction? Something like AFNI's RETROICOR, FSL's PNM, or TAPAS's PhysIO Toolbox?
Thanks
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/rhodricusack/automaticanalysis/issues/98, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AEl8qcHsdMiLXw0kJI4V6rcJbr7FJBGyks5rfH3EgaJpZM4MJAy5.


{Error Improvement} Failure recommendation enhancement

Description

This PR enables part of the features in #15692
These features are
1. Use users' input values instead of placeholders for arguments if there are

supports both short and long options
supports both key val and key=val
use <> to wrap placeholders

2. Remove non-neccesary arguments in recommended commands

partly supported. If we have multiple candidate commands which could match users' input, we will choose a command without the non-necessary parameters.

Rely on Aladdin service to recommend commands with only necessary parameters
Testing Guide

for short/long options
Just type az vm create -n houkVM --image houkImage , you will get the recommended command with the parameter values replaced with your inputs.

Try this: 'az vm create -n houkVM -g <MyResourceGroup> --image houkImage'

for key val and key=val cases
Just type az vm create --name houkVM --image=houkImage, you will get the recommended command with the parameter values replaced with your inputs.

Try this: 'az vm create -n houkVM -g <MyResourceGroup> --image houkImage'

Remove non-necessary parameters
Just type az group create

Previously, you will get the recommended command
Try this: 'az group create --location westeurope --resource-group MyResourceGroup --subscription mysubscription'

Now, you will get the recommended command
Try this: 'az group create -l <westus> -n <MyResourceGroup>'

@zhoxing-ms for awareness


Add fallback option to link to homepage if target entry does not exist

I have added a fallback option to link to the homepage of the target site if the requested entry does not exist on the target site.

@lindseydiloreto I couldn't find this feature in the current code. Feel free to shoot this PR down if I missed an already existing feature.

@lindseydiloreto I am not sure if this repo is still actively maintained. It has been one and half months and this PR hasn't even been noticed?

Hey @niektenhoopen, sorry for the very late response! Technically, this repo is still being maintained. It is not abandoned, although it receives very little maintenance.
However, we no longer use it on any of our projects (we have almost no multi-site projects). I may eventually try to find a responsible and trustworthy developer to take over this plugin. We are still very proud of this plugin, but we don't really use it anymore.
I'll try to take a look at your PR in the near future. Sorry again for the delay.

@lindseydiloreto Did you already found time? It has been 6 months and my PR adds basically one if-statement and one line of code.

Hi @niektenhoopen, sorry for the significant delay.
I just reviewed everything and made a few relatively minor tweaks. It's all live now in v2.2.0.
Thanks for the contribution! 🍺


gitea: init at 1.2.1

Motivation for this change
adds gitea package and service module
Things done

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

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

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

Could gitea share NixOS module with gogs? If we had "services.gogs.package = gogs|gitea"?

It's a possibility at this point, but I'd be wary the further the fork diverges, the more things would be different. In this particular case, the systemd pre-start script needed to copy some locales over into the state directory the get the service to run. I also don't think upstream has any intention on keeping compatibility with gogs going forward.

hello fellow nixtronauts,
I opened a gitea PR a while ago: https://github.com/NixOS/nixpkgs/pull/28851
It has some more fine grained config (eg forcing repositories to be private, disabling registration etc).
I think it still has value to add but i currently don't have the time to clean it up.
just wanted to let you know.


Added Program

Oppo
https://security.oppo.com/en/

Thank you @DhiyaneshGeek for updating the list.


Setup Javascript

Setup basic Javascript that we can build off of.
THEN push it through to main branch via PR.
THEN we will build upon JS to add more features.

Javascript has been added.


bazel: Update swift_static_framework to use swiftinterfaces

This is an in between to https://github.com/lyft/envoy-mobile/pull/797
which starts building the archive with swiftinterface files, but does
it with our existing swift_static_framework rule because of issues
linked on that PR.
Signed-off-by: Keith Smiley<EMAIL_ADDRESS>

This still includes the swiftmodule file in the framework because of this issue, https://github.com/bazelbuild/rules_apple/pull/753 this way people can continue to use it as before for now, but folks who apply this patch can use the swiftinterface instead.

This currently contains both the swiftinterface and the swiftmodule file, once https://github.com/bazelbuild/rules_apple/pull/753 is fixed we can remove the swiftmodule file


parallel reduce sum

Transferred from wiki page "Parallel reduce sum", which no longer exist.
Introduction
This document is meant to facilitate development of the reduce_sum command, which provides a general facility for running the sum reduce operation over elements created by evaluating a user provided function on a potentially large set of items. The key benefit of using the new command is parallel evaluation with the Intel TBB for the cases of primitive evaluation or reverse mode autodiff.
The targeted usage in a Stan user program is conceptually like:
functions {
   real user_lpdf(int start, int end, real[] sub_slice,
                 real[] shared_arg1, ..., int[] shared_argN) {
      // calculate the lpdf for the sub-slice of data given in
      // sub_slice;  shared arguments can be subsetted according to start
      // and end index;  for example, if only group means of subsets
      // of the data are needed as given by start...end
      return slice_lpdf;
   }
}
...

model {
   target += reduce_sum(user_lpdf, sliced_argument,
                        shared_arg1, ..., shared_argN);
   // the above is equivalent to
   // target += user_lpdf(1, size_of(slice_argument), sliced_argument,
   //                     shared_arg1, ..., shared_argN);
}

The exact slicing is not controlled by the user, but instead by the Intel TBB scheduler which controls what chunks of works are being executed.
For the discussion describing how this design evolved, see Parallel autodiff v3.
Stan Language
The reduce_sum targets the Stan signatures as

// f is the reducer function
real f(int start, int end, sliced_type sub_slice_container, ...);

// parallel reduce
real reduce_sum(real(int, int, sliced_type, ...) f,
                sliced_type large_container, int grainsize, ...);

So the user passes in a reducer function f, a grainsize (telling the TBB what is a sensible blocking size),  a large container over which the reduce is performed and shared arguments of any Stan admissible type. Currently the restriction used for the slice_type is that it must be an array which may contain any other type. So these are admissible for the sliced_type:

real[num_jobs]
int[num_jobs]
real[num_jobs,nested_dimension]
matrix[rows, cols][num_jobs]
vector[rows][num_jobs]
row_vector[cols][num_jobs]

Thus we allow about anything for the slice_type, but excluding vector, row_vector or matrix.
The shared arguments in ... can be arbitrary many and these can be of any type.
Example Stan Program
Here is an example Stan program which performs inference for a hierarchical Poisson model. The program simulates its own data and calculates the likelihood with different ways of parallelism which is control by the method switch part of the data:

method=0: Using parallel reduce TBB with given grainsize
method=1: Using reduce function without parallelization
method=2: Using parallel grouped reduce TBB with grainsize. This version is more efficient than method 0, but a bit more cumbersome to read.
method=3: Using grouped reduce function without parallelization
method=4: Using map_rect
method=5: Simple serial evaluation

Note that the grainsize is a tuning parameter for the Intel TBB which controls the minimal chunking size.
Example model:
functions {
  // runs reduce over the index range start to end. Mapping from
  // data-index set to group indices pre-stored in gidx
  real hierarchical_reduce(int start, int end, int[] y_slice, real[] log_lambda_group, int[] gidx) {
    return poisson_log_lpmf(y_slice| log_lambda_group[gidx[start:end]]);
  }

  // runs reduce over the index range start to end. Mapping from
  // data-index set to group indices pre-stored in gidx
  real hierarchical_grouped_reduce(int start, int end, real[] log_lambda_group_slice, int[] y, int[] gsidx) {
    real lp = 0.0;
    int terms = end - start + 1;
    for(i in 1:terms) {
      int gstart = gsidx[start + i - 1];
      int gend = gsidx[start + i] - 1;
      lp += poisson_log_lpmf(y[gstart:gend]| log_lambda_group_slice[i]);
    }
    return lp;
  }

  // map-rect alterantive
  vector mr_reduce(vector beta, vector log_lambda, real[] xr, int[] xi) {
    real lp = poisson_log_lpmf(xi| log_lambda[1]);
    return [lp]';
  }
}
data {
  int<lower=0> N;
  int<lower=0> G;
  int<lower=0> grainsize;
  int<lower=0,upper=5> method;
}
transformed data {
  real true_log_lambda = log(5.0);
  real true_tau = log(10)/1.96;
  int y[N*G];
  int yg[G,N];
  real xr[G,0];
  int gidx[N*G];
  int gsidx[G+1];
  int start[G];
  int end[G];
  int group[G];
  vector[0] theta_dummy;

  print("Simulating problem size: G = ", G, "; N = ", N);
  if (method == 0) {
    print("Using parallel reduce TBB with grainsize = ", grainsize);
  } else if (method == 1) {
    print("Using reduce function without parallelization.");
  } else if (method == 2) {
    print("Using parallel grouped reduce TBB with grainsize = ", grainsize);
  } else if (method == 3) {
    print("Using grouped reduce function without parallelization.");
  } else if (method == 4) {
    print("Using map_rect.");
  } else if (method == 5) {
    print("Using serial evaluation only.");
  }

  for(g in 1:G) {
    real lambda_group = lognormal_rng(true_log_lambda, true_tau);
    int elem = 1;
    group[g] = g;
    start[g] = (g-1) * N + 1;
    end[g] = g * N;
    gsidx[g] = start[g];
    gsidx[g+1] = end[g]+1;
    for(i in start[g]:end[g]) {
      y[i] = poisson_rng(lambda_group);
      yg[g,elem] = y[i];
      gidx[i] = g;
      elem += 1;
    }
  }
}
parameters {
  real log_lambda;
  real<lower=0> tau;
  vector[G] eta;
}
model {
  real log_lambda_group[G] = to_array_1d(log_lambda + eta * tau);
  //vector[G] log_lambda_group_vec = to_vector(log_lambda_group) ;
  real lpmf = 0;

  if (method == 0) {
    lpmf = reduce_sum(hierarchical_reduce, y, grainsize, log_lambda_group, gidx);
  } else if (method == 1) {
    lpmf = hierarchical_reduce(1, N*G, y, log_lambda_group, gidx);
  } else if (method == 2) {
    lpmf = reduce_sum(hierarchical_grouped_reduce, log_lambda_group, grainsize, y, gsidx);
  } else if (method == 3) {
    lpmf = hierarchical_grouped_reduce(1, G, log_lambda_group, y, gsidx);
  } else if (method == 4) {
      vector[1] log_lambda_group_tilde[G];
      for(g in 1:G)
        log_lambda_group_tilde[g,1] = log_lambda_group[g];
      lpmf = sum(map_rect(mr_reduce, theta_dummy, log_lambda_group_tilde, xr, yg));
  } else if (method == 5) {
      lpmf = poisson_log_lpmf(y| log_lambda_group[gidx]);
  }

  target += lpmf;
  target += normal_lpdf(log_lambda|0,1);
  target += normal_lpdf(tau|0,1);
  target += normal_lpdf(eta|0,1);
}
generated quantities {
  real msq_log_lambda = square(true_log_lambda - log_lambda);
  real msq_tau = square(true_tau - tau);
}

Things Left Todo
Add the stanc3 interface so we can test this in a larger setting

We can close this one, this was done. It is good that we have this saved somewhere in the unlikely case we need it sometime in the future.


Added more Discord libraries and subcatagories for languages

Added discordie, discordio, Discord.Net, discord.py, JDA, Serenity, Discordia

Thanks @PyroclasticMayhem !


System_stats plugin implementation

Tested on - Linux Mint 18.2 x86 vm, macOS 10.12.6
This plugin inserts system specific statistics in to the stats list.  Currently it will pull the system load values, number of processes, and the network device statistics for each network device listed in the sysfs.  Since this depends on sysfs and sysinfo it is generally only usable on a linux system, though it will compile for others in case contributors wish to add support for other OS types.

[approve ci].

Just to be clear, this is not specific to "stats_over_http", any stats collection using the mgmt port can also get to this. Slightly confusing that ATS would "own" system level stats, but I have no real objections to this since people can simply chose not to use it :-).

[approve ci clang-format]

Fixed the description :)
The reasoning behind this is currently on traffic-control we are using a customized version of stats_over_http that inserts a lot of this data as an appended json blob. So doing this we can move to a method that's standardized based on ATS version, plus other people are free to use it and improve as well

[approve ci]

[approve ci]

@zwoop because everything over HTTP.

sorry, still new to git, ill work on getting it squashed properly

Fixed squashing issues and added documentation

[approve ci]

[approve ci autest]

[approve ci].


feat: use discountCT

Adds support for discount ct and removes all lowball related code.
Only to be merged once discountct is widely deployed on mainnet

Needs changes for https://github.com/BoltzExchange/boltz-client/pull/361/files#diff-99bb9a4912420ebe5772b4e827280df5a010942ef20ef8d8b09da8961b81ad07R372


No Chart Data

Hi,
I'm trying to test zenbot, run zenbut with the default config and without key to the exchanges, but zenbot don't show any chart, even in the simulation. Is it something a missed? Maybe mongodb? I install the mongodb that shipped with ubuntu 16.04.
Any help would be great. Thanks!

Same issue here

did you back fill the data from your exchange, it took me some time to get it all working.

I don't think so... Not sure how to do that can you guide me :) ?

Do you need to fill in all the fields in config.js in order for it to display data ?

Cool! I tried what you said , filled the passphrase api key and secret in config.js. Now when I run
./zenbot launch map --backfill
I get this error:
TypeError: Cannot read property 'indexOf' of undefined
    at /Users/cyrusghazanfar/Desktop/cryptocurrency/zenbot/utils/get_products.js:6:19
    at Array.filter (native)
    at get_products (/Users/cyrusghazanfar/Desktop/cryptocurrency/zenbot/utils/get_products.js:5:23)
    at mapper (/Users/cyrusghazanfar/Desktop/cryptocurrency/zenbot/plugins/gdax/backfiller.js:12:20)
    at /Users/cyrusghazanfar/Desktop/cryptocurrency/zenbot/node_modules/run-parallel/index.js:41:7
    at Array.forEach (native)
    at module.exports (/Users/cyrusghazanfar/Desktop/cryptocurrency/zenbot/node_modules/run-parallel/index.js:40:11)
    at mapper (/Users/cyrusghazanfar/Desktop/cryptocurrency/zenbot/node_modules/zenbrain/core/mapper/mapper.js:9:5)
    at Object.<anonymous> (/Users/cyrusghazanfar/Desktop/cryptocurrency/zenbot/node_modules/zenbrain/core/launcher/launcher.js:76:11)
    at Immediate.<anonymous> (/Users/cyrusghazanfar/Desktop/cryptocurrency/zenbot/node_modules/sosa/api.js:15:12)
05/10/2017 02:02:22 PM EDT [    launcher] cmd `map` exited with code 1, respawning now.
05/10/2017 02:02:23 PM EDT [    launcher] cmd `map` booting
/Users/cyrusghazanfar/Desktop/cryptocurrency/zenbot/utils/get_products.js:6
      if (c.assets.indexOf(product.asset) === -1) return false

Any idea what might be going wrong ?

I think the you will probably be missing a couple of variables. try adding  --config config_eth_btc.js to the command. You you will to need to change it for your currency and asset pairs you are using.
You could also add to your config.js file. Again change to suit you currency pair and exchange codes
c.assets = [   "XETH" ] c.currencies = [   "ZEUR" ]

Thanks it looks like the graph is working now. Do I need to wait until it has all the 91 days past data ? what to do next to visualize buy and sell positions of the algorithm ?
Here is how it looks so far:

Cool success!
The app should work without all data backfilled, but I believe you need need to have enough captured for the decision making to work correctly. I cant recall if this is config based or built in.
Also the app will mark the price wall with arrows for the buys and sells like the picture on this project home page. It works for me but I have issues with the buys not showing up when I restart the app. You may have better luch
You may have a slight config issue in one of the files files as the price tracker near the top left is ETH/BTC.

Yeah I noticed that too... It's strange since the console is showing buy and sell positions but the graph isn't.
Check this out:

Also my config.js
var c = module.exports = require('./config_defaults')()

// mongo stuff
c.mongo_url = "mongodb://" + (process.env.MONGODB_PORT_27017_TCP_ADDR || "localhost") + ":27017/zenbrain" // change if your mongo server isn't local

c.mongo_username = null // normally not needed
c.mongo_password = null

c.gdax_key = 'arsuLDcotNNsUwic' // TO ENABLE BOT TRADING: set this to GDAX api key,
c.gdax_secret = '9mMkIPF0XWXArzoSrRxkVjdyporey855' // set this to GDAX api secret,
c.gdax_passphrase = 'Ameneh.22' // set this to GDAX api passphrase.
c.trade_log = true // log new trades as they come in.

// watch these exchanges
c.watch_exchanges = [
  //"bitfinex",
  "gdax",
  //"kraken",
  //"poloniex"
]

// selector for indicators, trading, etc
c.default_selector = "gdax.BTC-USD"

// add selectors in the format "{exchange-slug}.{asset}-{currency}" to graph them
c.graph_selectors = [
  c.default_selector,
  "gdax.ETH-BTC",
  "gdax.ETH-USD"
]

// trade logic
c.logic = require('./default_logic')

c.assets = [ "XETH" ]
c.currencies = [ "ZEUR" ]

Do you see something unusual ?

c.assets = [ "XETH" ] c.currencies = [ "ZEUR" ]
Looks like your trying to use BTC? If so i think you will need to set the following. You added the variables I pointed you to earlier you but you need to set to the currency you wish to trade.
Change to this and it might work for you
c.assets = [ "BTC" ] c.currencies = [ "USD" ]

awesome that's done thanks. Still not seeing the buy and sell arrows on the graph. How can I simulate the default strategy ?

'./zenbot sim --verbose'
this will run the trade sim and output a link at the end.
once that is completed you can start the server and view the link. You should see arrows then.
'./server.sh'
The entries in the console are trades from the exchange. The bars on the chart is generated from these trades. The log will show when you logic triggers a buy you will see an order created, once this is confirmed by the exchange the arrow should appear on the chart.
Although this is the thought process from what I can see.

Ugh hahaha I tried that also but seems like I don't have enough historical data ?

Sorry for bothering you lol but the setup is a pain :/

No worries, I've been through much of this setup fun recently although with Kraken exchange. Had to hack a few changes into default_logic.js

I'm not getting any chart data either.
Steps:

git clone https://github.com/carlos8f/zenbot.git
cd zenbot
npm install
cp config_sample.js config.js
./run.sh
Visit the url in the shell

I see it going through all of the steps as well as see my mongodb filling up with data
05/11/2017 12:52:59 PM PDT [        gdax]    m24908872     100 trades. 05/11/2017 12:52:54 PM PDT  BUY        63.242 at     $1,846.84 BTC/USD
05/11/2017 12:53:08 PM PDT [      trader] gdax.BTC-USD No trader API key provided. Starting in advisor mode. --Zen
05/11/2017 12:53:08 PM PDT [      trader] gdax.BTC-USD need more historical data, only have 0 of 26 5m ticks
05/11/2017 12:53:08 PM PDT [      trader] gdax.BTC-USD skipping historical tick zb:m24908872
05/11/2017 12:53:08 PM PDT [    reporter] 05/11/2017 12:52:00 PM PDT    m24908872      36 trades.                      RSI:n/a CLOSE:    $1,847.00 USD gdax.BTC-USD BAL:   $10,000.00 ROI:1.000
05/11/2017 12:53:19 PM PDT [        gdax]    m24908873       3 trades. 05/11/2017 12:53:11 PM PDT SELL         0.109 at     $1,846.34 BTC/USD
05/11/2017 12:53:33 PM PDT [     reducer] processing  11/ticks sec, thought queue: 0
05/11/2017 12:53:40 PM PDT [        gdax]    m24908873      16 trades. 05/11/2017 12:53:40 PM PDT  BUY        12.815 at     $1,846.98 BTC/USD
05/11/2017 12:54:04 PM PDT [      trader] gdax.BTC-USD need more historical data, only have 1 of 26 5m ticks
05/11/2017 12:54:04 PM PDT [      trader] gdax.BTC-USD skipping historical tick zb:m24908873
05/11/2017 12:54:04 PM PDT [    reporter] 05/11/2017 12:53:00 PM PDT    m24908873      16 trades.                                            RSI:n/a CLOSE:    $1,846.84 USD gdax.BTC-USD BAL:    $9,997.32 ROI:1.000
05/11/2017 12:55:20 PM PDT [        gdax]    m24908875      10 trades. 05/11/2017 12:55:16 PM PDT  BUY         6.888 at     $1,846.99 BTC/USD
05/11/2017 12:55:41 PM PDT [        gdax]    m24908875      12 trades. 05/11/2017 12:55:36 PM PDT  BUY         4.041 at     $1,846.12 BTC/USD

Any ideas why I don't see any chart data?

Between step 4 & 5 did you change config.js

Cleaning up 3.x issues


Full-size image is being loaded in admin

This applies to both the post type index page and the single post edit page. There are admin styles that prevent the image from breaking the layout, but it would still be better to load a small, uncropped image.

Just a note for future testing of a thumbnail image - the test should include images loaded from both internal and external domains.


Increment version for cosmos releases

Increment package version after release of com.azure azure-spring-data-cosmos

/check-enforcer override


Optional Ingress choice.

I'd like to inquire if it's possible to offer users a choice between ingress controllers. Would that fit in the project's goals?
We use traefik, for it's reduced footprint (mem/cpu) and some configuration advantages. Others could be supported as well, though.
If you're interested, I might be able to get my company to sponsor the work.

In any case, nothing prevents you from running multiple Ingress controllers in Kubernetes, but before we can take the decision on supporting more Ingress controllers could you provide a little bit more background? We are interested not just in reduced memory footprint, but what configuration advantages are those.

@falfaro Thanks for your consideration.
To satisfy some InfoSec requirements  we needed to remove the "server" header. While this is possible with a custom compiled Nginx Image, Traefik (for example) is able to just turn it off.

And this https://www.getpagespeed.com/server-setup/nginx/how-to-remove-the-server-header-in-nginx doesn't suit you, right?

That's what we thought as well, but InfoSec did not want to expose that the server was nginx at all.
This setting just removes the version.

At the moment we don't have the development bandwidth to support Traefik but you can run it side-by-side with NGINX and annotate your Ingress resources with an annotation that "hints" Kubernetes into using Traefik instead of NGINX.
Something like this:
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: your-ingress
  annotations:
    kubernetes.io/ingress.class: traefik

More generally, we're trying to keep the "official BKPR" as a "known quantity" that people can reasonably test against without it becoming just another soup of possible combinations.  At the same time, we want to make it easy for end-users to customise (because matching local requirements is important), with the implied bargain that now the responsibility for testing their customisation and any downstream implications is on the end-user.
So: As a project, we should support one-and-only-one Ingress implementation in each BKPR release, and at the same time make it easy to replace that choice locally.
Eg: if you have a jsonnet overlay that switches out the ingress implementation for traefik, that would be an awesome thing to share and redistribute in a 'contrib' directory or similar, so that other people can benefit from your work (and collaborate on it).
Separately: I fully expect that BKPR (project-wide) will migrate off nginx and onto something "more modern" like traefik or contour at some point.  When this happens, it would be part of a new release, and clearly called out in the release notes since it will likely affect anyone using Ingress annotations (the k8s Ingress abstraction is extremely leaky, as we all know).

So @Elexy, which direction would you like to take this specific GitHub issue?

Ensure that you can run traefik as a separate ingress.class alongside BKPR's unmodified nginx install?
(I think/hope this already works?)
Develop a customisation overlay that switches BKPR's nginx over to traefik, and publish that somewhere?
Switch BKPR's default from nginx to traefik?

All sound good to me, obviously with different expectations of effort and timeline.  Note that the jsonnet part of (2) is going to be a requirement for (3) anyway.

@anguslees I think #2 and #3 are a good direction. However, for our use case we want to leverage more managed cloud services for things like logging and metrics.
As such we're developing a more bespoke set of supporting components to leverage for instance the AWS ALB and Azure monitor.
In short our needs and intentions seem to be quite a ways away from BKPR's.


Adding Social Media Links to the Footer of README

This READ ME lacks a contact us section.
We can Add a visually appealing footer to the README that includes links to key social media profiles, making it easy for users to connect and stay updated. The footer should align with the project's branding, feature accessible icons (e.g., GitHub, Twitter, LinkedIn), and be mobile-friendly. Each link must be verified to open correctly, ideally in a new tab where possible. This enhancement will improve user engagement and provide quick access to our social platforms.
please assign and add level2

hi, can you assign this to me?

the issue is already resolved


Defining environments in a an separate layer doesn't work

I'm trying to use environments and layers at the same time while using a variable in my helmfile.yaml:
bases:
- environments.yaml

repositories:
- name: stable
  url: https://kubernetes-charts.storage.googleapis.com

releases:
- name: nginx-ingress
  chart: stable/nginx-ingress
  version: 1.40.2
  installed: {{ .Values.install }}

environments.yaml:
environments:
  default:
    values:
    - values.yaml

values.yaml:
install: "true"

When running helmfile template with version v0.127.0 I get this error:
in ./helmfile.yaml: error during helmfile.yaml.part.0 parsing: template: stringTemplate:17:23: executing "stringTemplate" at <.Values.install>: map has no entry for key "install"

But when I merge both files into one I don't get any errors:
environments:
  default:
    values:
    - values.yaml

repositories:
- name: stable
  url: https://kubernetes-charts.storage.googleapis.com

releases:
- name: nginx-ingress
  chart: stable/nginx-ingress
  version: 1.40.2
  installed: {{ .Values.install }}

Am I doing something wrong here?

@K1Hyve Thanks for using Helmfile! I'm a bit uncertain, but does it make any difference if you separated bases and the later part with ---, like:
bases:
- environments.yaml

---

repositories:
- name: stable
  url: https://kubernetes-charts.storage.googleapis.com

releases:
- name: nginx-ingress
  chart: stable/nginx-ingress
  version: 1.40.2
  installed: {{ .Values.install }}

?

Thank you for working on such a great app!
Yes, adding --- indeed helped with solving the problem.
I had a look brief at this page but I didn't know this operator does such a huge change.
Feel free to close the issue.


Update ceylon.promise to use native annotations

Right now ceylon.promise is compiled using build trickery, we should use native annotations now that we have them.

Forgot to mark the commit @b1c792a7613943c0eedca05f89f2c20c537abe52 for this issue as well.

Done.


Add Edward Mooney to Contributors list

Slowly but surely right?
Nice!

Slowly but surely right?

Absolutely
@brnagn7, I'm quite elated about your pull request. I wanna evolve this project to addresses various problems faced by first-time contributors. I'd love to learn about your journey in open source community, the problems, pain points you had etc.
Could you explain how you felt when you went through the tutorial, made a pull request and learned that I merged it?
We’ve recently added Facebook share and tweet feature to our web app. Could you please go to https://roshanjossey.github.io/first-contributions/#social-share and share your first contribution to open source?
Also, check out projects with easy issues while you’re there.


FIXUP: Fix DTBO

Our lk3rd has code that expects a dtbo without the mkdtboimg format from google. This needs to be fixed in order for the device to actually boot Android.
FYI: lib/fdtapi/fdtapi.c has this code.
We need to add support for the dtbo header, as that is what our production devices use

👍

Well, 2 major problems have already arose:

We cannot get the correct board revision (most likely cause the voltage tables for our revisions from ADC are either incorrect, or this is the fault of being a third stage BL rather than first stage.

Doing a test boot with dtbo merging disabled, a modified recovery with complete fdt included, and a force boot to recovery doesn't make it boot, (as discussed this could very well be decon)


Fixes queryFactory

Hi,
We finally had some time to test the new version and here are some regressions we spotted.
First is we did not support token replacement in key Strings. (we also implemented it in value Strings as a side effect)
Second we missed some basic sanitizing of the String parameters which could allow injection.

Thanks again


Support load() statements

Skylark sources that load() other Skylark sources is currently not supported, and references to load()ed symbols in the global scope result in errors.
Some possible approaches:

Evaluate load() statements and create mock definitions of symbols in the global scope. See if we can do this using the stub for load().
Parse the label and evaluate the file that load() is pointing to.

Eventually, this problem (and other problems caused by incompatibility with Python) will be solved by Skylark-as-a-library.

Does the merged PR resolve this issue completely?

The merged PR is one step towards this but does not resolve this issue fully. We would still need to fully implement symbol resolution.

I assume the resolution of this issue would also fix this problem:
basic.bzl
base_attrs = {
  "data": attr.label_list(doc = "Important note")
}

my_rule.bzl
load("bazel.bzl", "base_attrs")
my_rule = rule(
attrs = dict(base_attrs, **{
  "another_attr": attr.string(doc = "Also important")
}))


rendering curved problem

@ankush-me
thank you for your great job.This program generates fonts rendering curves ,like the following picture , but I only need to arrange the font in a straight line，how to change the code?

Thank you! Try changing render_curved here to render_multiline.

@ankush-me
Dear teacher, in order to clarify the details, I'm learning the code to repeat this project once again, thank you for your advice.
Can I make two blocks(wordBB) not too close? Otherwise a block(wordBB) contains  characters of other blocks when cropping wordBB .Just like the picture below.Can this be avoided?

Yes, this can be avoided. You need to update the collision_mask here, with bounding-boxes of the text, rather than the pixels of the characters.

@ankush-me
According to your advice, the effect is great. The last question, there will be straight lines above or below the characters occasionally(the following image), how can I get rid of the lines above or below the text?  I just want the   text.

  The task my teacher gave me will be completed soon .
thank you!

Great. Set underline here to 0.

@ankush-me
Thank you, teacher


Invalid XHTML generation

Converted from SourceForge issue 3183526, submitted by @raducoravu
We have a case in a DITA table like:
    <table frame="all" id="table_jie_rdm_jb">
    <desc>THE TABLE</desc>
    <tgroup cols="2">
    .........................
    </table>

The XHTML transformation transforms the <desc>  to a <span>  in the final
XHTML documents.
It is of course invalid in XHTML to have something like:
`<table><span>THE TABLE</span>.....</table>`

Of course a browser understands such a construct.
Do you consider it as important for the DITA OT to output valid XHTML?

Closing as obsolete.


Documentation Review

I'd like to have someone (preferably someone new to the project) review the documentation updates we've made to identify what's missing/what improvements would be helpful.

Closing this for now—Bill hasn't surfaced anything, so I'm going to assume our documentation is sufficient.


Showing Number of addresses

In beta, graphsense shows "num_of_addresses" instead of the "actually number" in the cluster-view.

German translation is not ready yet. Please switch to English (or Russian :-D) in the settings.


Added Odd and Even mask arrays to FoldedLightCurve

With folded light curves, it's often useful to see odd and even transits. This can be used to see if the signal is a planet or an eclipsing binary. It's also useful to compare the shape of odd and even transits.
I've added two attributes to FoldedLightCurve: odd and even which returns a mask of booleans. You use it to index the folded light curve.
f = lc.fold(...)
f[f.odd].scatter()
f[f.even].scatter()

Here's a demo:

Codecov Report

Merging #425 into master will increase coverage by 0.03%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #425      +/-   ##
==========================================
+ Coverage   88.34%   88.37%   +0.03%
==========================================
  Files          28       28
  Lines        4866     4879      +13
==========================================
+ Hits         4299     4312      +13
  Misses        567      567

Impacted Files
Coverage Δ

lightkurve/lightcurve.py
93.34% <100%> (+0.09%)
:arrow_up:

lightkurve/tests/test_lightcurve.py
98.7% <100%> (+0.01%)
:arrow_up:

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 b4b599e...3365375. Read the comment docs.

This PR is now ready to be merged. It implements a useful function for verifying planets that was requested a long time ago by Jeff Coughlin

I pushed an extra commit to improve the docstrings:

This should be good to merge if the tests pass!


fix: Check OAuth2 redirect URL for matching callback URL and authorization code in query parameters

Fixes #2147
Description
In an Authorization code flow, there may be multiple intermediate redirects before reaching the final one which matches the callback URL and has a code in the query params.
We should wait until we see a redirect URI that matches both the conditions. This fixes the issue where, when a redirect contains code as a query param but is not the final one (i.e., is not to the callback URL) an error is thrown saying the callback URL is invalid.
Contribution Checklist:

[x] The pull request only addresses one issue or adds one feature.
[x] The pull request does not introduce any breaking changes
[ ] I have added screenshots or gifs to help explain the change if applicable.
[x] I have read the contribution guidelines.
[x] Create an issue and link to the pull request.

@lohit-1 Can you review this?

I have verified that the changes in this PR allow for using Auth0 with Bruno. Would appreciate for this to get merged and released so I can roll out Bruno in our company :)

fix: #1003

Merged!
Thanks @dakshin-k for working on this.
Thank you for the review @pietrygamat @lohxt1 !
This will be released in the build scheduled to go out on Tuesday, June 4 2024.


feat(ui): Add namespace input to ClusterWorkflowTemplate submit. Fixes #10398

Fixes #10398
Motivation
This adds support for specifying the namespace when submitting a workflow from a ClusterWorkflowTemplate using an input field on the "Submit Workflow" panel.
Modifications
Updates the <SubmitWorkflowPanel> to allow specifying the namespace via <TextInput>. Initially, I used the <InputFilter> component for this so it could take advantage of autocomplete, but then I realized that's not appropriate here because this isn't a filter and we don't want the "x" button to clear the field.
Verification
Tested locally at http://localhost:8081/cluster-workflow-templates:
https://github.com/user-attachments/assets/2f2d6312-2806-4efa-ad79-10017bd4fd12

Also if you want to work on another namespace input in the UI, https://github.com/argoproj/argo-workflows/issues/12041 is highly requested 🙂

@agilgur5 Thanks for the review!

Also, per the issue, did the submit panel just not work before this? If so, that issue should be labeled a bug and this a fix

Due to the bug in https://github.com/argoproj/argo-workflows/pull/13593, it wasn't possible to click the "Submit" button, so I tested this by rebasing my branch with that fix. I confirmed it's possible to submit it with the fix, so this isn't a bug.


Workflow for reading mdocs with identity?

Not an issue, just a question!
Is there a description or visual that shows the workflow of identity and the steps taken to connect and read mdocs with it?
Thank you

I'm not aware of any publicly available slidedecks for this. If you don't mind reading standards, all the steps are described in ISO/IEC 18013-5:2021. You can also reader appverifier in our repo which implements this standard.


Rendering novel views

Hi! Thank you for your work!
It was said in the paper, that it's possible to render novel views by using adapted depth priors from the nearest view. However, nothing was said about how to deal with missed regions, in case we adapt these predicted priors (I guess, here we need to warp them). I also didn't manage to find any code doing that. Could you please clarify this point?

We directly use the depth priors from the nearest view without warpping. Actually, we have tried to warp the nearest views to the novel views. However, there exists many holes. A potential solution is to use training views to generate mesh and project it to novel views to generate depth priors, which leaves for the future work.

This is an interesting solution, however, shouldn't it produce slightly worse images because of the inconsistency of rendered image and prior depth?

We think the adaptive sampling range can alleviate this issue. Yeah, there still exists some black regions on rendered images caused by this inconsistency. Despite of this, the quality is still better than original NeRF.

Got it. Thank you for your responses!


Shortcuts not registering?

This is an odd one because it seems to be inconsistent. I'm pointing the application to my desktop and asking it to move new .lnk files (shortcuts) somewhere else in my home directory... While it has worked before it often ignores certain shortcuts as if they don't even exist.
Edit
It managed to recognize the "ImageMagick Display" applications shortcut when updating it but I see no discernible difference between "it" and other shortcuts that sit on my desktop.

Sorry for my late reply. That is indeed odd. Can you post your full config file here? And could you paste the output of the dir command of your desktop?

No worries!
honestly IDK what's up with it, trying to replicate yields me no issues; yet there were specific shortcuts that refused to get recognized by the script and I can't for the life of me recreate it, so maybe a fluke?
I even tried dumping all my icons to check.
It did happen after installing a new application so I'm not sure if that's a contributing factor.
I'll keep trying and make an update if I find an offending shortcut.lnk
Config
rules:
  # ------------------------------------------------------------------
  # # """ Move screenshots into 'Screenshots' folder """
  # - folders:
  #     - ~/Desktop
  #   filters:
  #     - Filename:
  #         startswith: 'Screen Shot'
  #   actions:
  #     - Move:
  #         dest: ~/Desktop/Screenshots/
  # ------------------------------------------------------------------
  # # """ Move incomplete downloads older > 30 days into the trash """
  # - folders:
  #     - ~/Downloads
  #   filters:
  #     - Extension:
  #         - download
  #         - crdownload
  #         - part
  #     - LastModified:
  #         days: 30
  #         mode: older
  #   actions:
  #     - Trash
  # ------------------------------------------------------------------
  # # """ Move Media into 'dump' folder """
  - folders:
    - ~/Desktop
    - ~/Downloads
    filters:
      - Extension:
        - png
        - jpg
        - jpeg
        - webp
        - ico
        - tif
        - bmp
        - svg
        - gif
        - mkv
        - mp4
        - webm
        - wmv
        - gifv
        - avi
        - mov
        - mp3
        - wav
        - ogg
    actions:
      - Move:
          dest: '~/!Dump/Media/'
  # ------------------------------------------------------------------
  # # """ Move Media into 'dump' folder """
  - folders:
    - ~/!Dump/Media
    filters:
      - Extension:
        - png
        - jpg
        - jpeg
        - webp
        - ico
        - tif
        - bmp
        - svg
        - gif
    actions:
      - Move:
          dest: '~/!Dump/Media/Images/'
  # ------------------------------------------------------------------
  # # """ Move Media into 'dump' folder """
  - folders:
    - ~/!Dump/Media/Images
    filters:
      - Extension:
        - ico
    actions:
      - Move:
          dest: '~/!Dump/Media/Images/Icons/'
  # ------------------------------------------------------------------
  # # """ Move Media into 'dump' folder """
  - folders:
    - ~/!Dump/Media
    filters:
      - Extension:
        - gifv
        - mov
        - mkv
        - mp4
        - webm
        - wmv
        - avi
    actions:
      - Move:
          dest: '~/!Dump/Media/Video/'
  # ------------------------------------------------------------------
  # # """ Move Media into 'dump' folder """
  - folders:
    - ~/!Dump/Media
    filters:
      - Extension:
        - mp3
        - wav
        - ogg
    actions:
      - Move:
          dest: '~/!Dump/Media/Audio/'
  # ------------------------------------------------------------------
  # # """ Move example/referance notes into 'documents' folder """
  # - folders:
  #   - ~/Desktop
  #   - ~/Downloads
  #   filters:
  #     - Filename:
  #       contains: ('AHK', 'AutoHotkey', 'Example', 'Reference', 'Template', 'Custom', 'Config')
  #       case_sensitive: false
  #   actions:
  #     - Move:
  #         dest: '~/!Dump/Documents/'
  # ------------------------------------------------------------------
  # # """ Move desktop shortcuts into 'links' folder """
  - folders:
    - ~/Desktop
    filters:
      - Extension:
        - lnk
    actions:
      - Move:
          dest: '~/Links/'
          overwrite: true
  # ------------------------------------------------------------------
  # # """ Move Bookmark files into 'Link' folder """
  - folders:
    - ~/Desktop
    - ~/Downloads
    filters:
      - Extension:
        - url
    actions:
      - Move:
          dest: '~/!Dump/Bookmarks/Universal Resorce Links/'
          overwrite: true
  # ------------------------------------------------------------------
  # # """ Move AutoHotkey files into 'dump' folder """
  - folders:
    - ~/Desktop
    - ~/Downloads
    filters:
      - Extension:
        - ahk
    actions:
      - Move:
          dest: '~/!Dump/Code/AutoHotkey/'
  # ------------------------------------------------------------------
  # # """ Move Powershell files into 'dump' folder """
  - folders:
    - ~/Desktop
    - ~/Downloads
    filters:
      - Extension:
        - ps1
    actions:
      - Move:
          dest: '~/!Dump/Code/Powershell/'
  # ------------------------------------------------------------------
  # # """ Move batch files into 'dump' folder """
  - folders:
    - ~/Desktop
    - ~/Downloads
    filters:
      - Extension:
        - bat
        - cmd
    actions:
      - Move:
          dest: '~/!Dump/Code/Batch/'
  # ------------------------------------------------------------------
  # # """ Move VBScript  files into 'dump' folder """
  - folders:
    - ~/Desktop
    - ~/Downloads
    filters:
      - Extension:
        - vbs
    actions:
      - Move:
          dest: '~/!Dump/Code/VBScript/'
  # ------------------------------------------------------------------
    # # """ Move registry files into 'dump' folder """
  - folders:
    - ~/Desktop
    - ~/Downloads
    filters:
      - Extension:
        - reg
    actions:
      - Move:
          dest: '~/!Dump/Code/Regedit/'
  # ------------------------------------------------------------------
  # # """ Move Desktop notes into 'dump' folder """
  - folders:
    - ~/Desktop
    - ~/Downloads
    filters:
      - Extension:
        - txt
        - pdf
        - docx
        - csv
    actions:
      - Move:
          dest: '~/!Dump/Documents/'
  # ------------------------------------------------------------------
  # # """ Move archives into 'dump' folder """
  - folders:
    - ~/Desktop
    - ~/Downloads
    filters:
      - Extension:
        - zip
        - rar
        - tgz
        - 7z
    actions:
      - Move:
          dest: '~/!Dump/Archives/'
  # ------------------------------------------------------------------
  - folders:
    - ~/Desktop
    - ~/Downloads
    filters:
      - Extension:
        - exe
        - msi
    actions:
      - Move:
          dest: '~/!Dump/Utilities/'
  # ------------------------------------------------------------------
  - folders:
    - ~/Desktop
    - ~/Downloads
    filters:
      - Extension:
        - apk
    actions:
      - Move:
          dest: '~/!Dump/Android/Applications/'
  # ------------------------------------------------------------------
  - folders:
    - ~/Desktop
    - ~/Downloads
    filters:
      - Extension:
        - py
        - pyw
    actions:
      - Move:
          dest: '~/!Dump/Code/Python/'
  # ------------------------------------------------------------------
  # # """ Move downloaded blender files into 'dump' folder """
  - folders:
    - ~/Desktop
    - ~/Downloads
    filters:
      - Extension:
        - blend
    actions:
      - Move:
          dest: '~/!Dump/Blender/'
          overwrite: true
  # ------------------------------------------------------------------

Haven't taken enough time to figure out a better solution to this, as I have to run the command a couple of times to make sure things all end up where they should

Hi, any updates on this? Did you try it with the newly released version?

I was unaware you released an update, thank you I'll check it out.
As I said it's been inconsistent and in fact a rarity at that given how often I use your code. Running the simulation it has no problem identifying the shortcuts that currently reside on my desktop. I was only able to spot the issue once more after installing some software and attempting to organize the shortcut it automatically place on the desktop. At which point I just decided to move it manually. From where I stand it does not seem like an easy thing to pin down.

I just found out that shortcuts inside the hidden folders C:\Users\Public\Desktop and C:\All Users\Public\Desktop show up on your desktop, too.
So I guess the applications put their shortcuts there and organize could not find them because it only searches the user's desktop (~/Desktop) as defined in the config file.
So in order to find everything shown on the desktop you can do something like this:
desktop_locations: &desktops
  - "%public%/Desktop"
  - "~/Desktop"

rules:
  - folders:
      - *desktops
      - "~/Downloads"
    actions:
      - Echo: "Detected file: {path} "

I just released version 1.5.2 to support the %public%-variable. Please update before trying this script!

I'm closing the issue because I think the problem is found. If it happens to you again don't hesitate to reply here or file a new issue 👍

By the way - I see you want to use lists in the filename filter in your config. I just published version 1.5.3 which supports that 👍

oop, alright I will keep an eye out for this issue. I haven't used the program as much lately because my current system needs work.
and thank you very much, that is a great addition imo!

Ran into it again when I was playing around with some stuff and I Just wanted to let you know that your "%public%/Desktop" did the trick. ❤

Hey that's great! Thank you for the update on this!


Multiple authentication schemes and global filters (ASP.NET Core 2)

Hi,
I'm struggling to get the following auth working in an OK manner, which of I find a quite common use case. I want to co-host a API and a UI within the same ASP.NET Core MVC 2 host, but keeping the authorization setup separate.

/api
Every route starting with /apishould have JWT bearer auth requiring the tokens to contain a specific scope.

/anyotherurl :
Any other URI should use cookies and openid connect, and use a global filter forcing authenticated users, so I don´t need to add an [Authorize] attribute on every new UI controller added to the project now or later.

Issue I'm facing
When I add global filters for cookies, they are applied to my API bits as well. This is undesirable.
            services.AddAuthorization(o =>
            {

                var authorizationPolicy = new AuthorizationPolicyBuilder(authenticationSchemes: OpenIdConnectDefaults.AuthenticationScheme)
                    .RequireAuthenticatedUser()
                    .Build();

                o.AddPolicy("RequireLoggedOnUsers", authorizationPolicy);
            });

          services.AddMvc(
                o =>
                {
                    o.Filters.Add(new AuthorizeFilter("RequireLoggedOnUsers"));
                });

I've tried using IActionModelConventions , but it does not seem to do anything to globally applied filters (e.g if I add a global filter for OIDC, I cannot "remove" it from the API routes filters).
Is there any other good way of seperating auth (APIs / UI) whilst also keeping the good parts of having global auth policies applied ..?
A [DisableGlobalFiltersFor("/api")], or a convention that allows for rejecting global filters?

Hi @johnkors , this is indeed an area that is not very easy to work with in 2.0. We are working on some improvements that should make this better in the 2.1 milestone, which you can follow via this issue: https://github.com/aspnet/Security/issues/1546

Not sure I follow how #1546 handles this scenario. #1546 looks like just an helper overload for doing cookies+social. That's not what I'm concerned about here.

Is it not possible to create something that makes a policy only applicable for provided set of routes? In the Katana world, one could at least just use middleware to accomplish seperation.
app.Map(IsApiRequest()), a => a.UseBearer());
app.Map(!IsApiRequest()); a => a.UseCookiesAndOpenId());

See https://github.com/aspnet/Security/issues/1546#issuecomment-348567748. Map almost worked with Core 1.x, but it won't work at all with the 2.0 design.

Right, thanks. I ended up with something working setting it up like this.
services.AddAuthentication()
    .AddVirtualScheme(VirtualAuthDAuthenticationScheme, VirtualAuthDAuthenticationScheme, o =>
    {
        o.DefaultSelector = c =>
        {
            if (c.Request.Path.StartsWithSegments("/api"))
            {
                return JwtBearerDefaults.AuthenticationScheme;
            }
            return OpenIdConnectDefaults.AuthenticationScheme;
        };
    })
    .AddCookie()
    .AddOpenIdConnect()
    .AddJwtBearer();

services.AddAuthorization(o =>
    {
        var authorizationPolicy = new AuthorizationPolicyBuilder(VirtualAuthDAuthenticationScheme)
            .RequireAuthenticatedUser()
            .Build();
        o.AddPolicy("RequireLoggedOnUsers", authorizationPolicy);
    });

@johnkors do you have git hub sample solution of Multiple Scheme and global filter ?

@akashdeep1024 : In the comment above, there's a global filter RequireLoggedOnUsers and 3/4 schemes.

We did tweak things a bit starting in preview2, we enabled the forwarding in all schemes now, so you can forward in all existing schemes (i.e. cookies, OAuth, google), AddVirtualScheme was renamed AddPolicyScheme for the scenario where you want a pure virtual scheme that isn't attached to any specific auth handler logic.

@HaoK Sounds amazing, can't wait to hack around with that. But I'm working on some production-bound code and need to figure out how to get something done now.
Essentially I am using .AddCookie().AddGoogle() on my authenticationbuilder, but when that comes back with a user I need to A) check that the email ends with a specific domain and B) ask the user to enter a user-specific password or PIN. I've been banging my head against the wall for a while now, and can use any assistance that might be available.

So you are basically doing two factor auth with Google + PIN/local password?  You will just need to build that flow yourself, it shouldn't look that different than what the templates do today, if you didn't want to use identity to do the password verification you would just replaces those calls to your own password verification logic

@HaoK, I have a different scenario for combining authentication methods that I'm wondering if it can be handled via VirtualSchemes or (even better) can be achieved without them? Due to the nature of our app (education software) we can have users coming in via a wide number of auth providers, many of them using OAuth 1.0 (specifically, LTI). Rather than always creating a new user account whenever we don't recognize a login and then having to deal with complex identity merges later, we want to invite 'new' users to identify themselves via OpenID, Google and Microsoft primarily since that covers most schools. We could just ask them for their U/P, except we don't do U/P - we have always preferred to only support login via 3rd party identity providers and don't really want to change that.
So the scenario is that one authentication scheme receives the user's identity info, recognizes that this identity is new to our system, and then forwards a challenge to our default scheme. Upon completion of that scheme (either successful auth or declining (i.e. NoResult)) we would ideally return to the original scheme to complete either creating a new user using the provided claims or adding an additional login to the existing user. Once all of that was complete, the final AuthenticationTicket would be returned and the request would process normally.


How come NVIDIA driver installation isn't needed in pytorch_image_classification_single_gpu_with_vertex_sdk_and_torchserve?

Expected Behavior
In the pytorch_image_classification_single_gpu_with_vertex_sdk_and_torchserve example, I would expect there to be a driver installation step for the pipeline to use the GPU.
Actual Behavior
Does the pytorch image already contain the nvidia drivers, or does it install the nvidia driver onto the host somehow? I asked a similar question here.

According to our guidelines, the community-content folder has no support provided. The original author is no longer available to support this sample.
@andrewferlitsch do you have an answer to this question about Vertex AI pipelines? https://stackoverflow.com/questions/73642322/running-custom-docker-container-with-gpu-using-vertex-ai-pipelines-how-to-inst


The Sample Code on This Page... HAS to Go

Hi Ted,
While I applaud the desire to provide a code sample that walks through and locates a capability, this particular code sample is... how should I best say this... "not the best".  Actually, OK: it's horrendous.
I would be happy to "donate" some sample code that's nicely formatted and that works, for a function usable from a WDF driver, that locates a given capability by ID (with the ID to locate passed-in as a parameter).  That could replace the example on this page.
Formatted, with error handling, and DbgPrints for errors... the function is about 100 lines long.
If you want it, I'll be happy to provide it.  If not, I won't be offended, I promise you.  But either way, you should really take this example of the page.  ;-)
Best,
Peter

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

ID: bd0a490c-5642-3863-596f-a0e5d7ba9644
Version Independent ID: f06461a3-83eb-7d2e-e3e7-dfcfd2e69fa8
Content: Accessing PCI Device Configuration Space - Windows drivers
Content Source: windows-driver-docs-pr/pci/accessing-pci-device-configuration-space.md
Product: windows-hardware
Technology: pci
GitHub Login: @tedhudek
Microsoft Alias: tedhudek

Hey Peter, appreciate the suggestion.  I've removed the snippet that was on there - please feel free to open a PR with your suggested change.  Happy to take a look.


No network device support?

Hi Jan, is this utility meant to be used for scanners connected via USB?
Otherwise I can't figure out how to make the connection to my network-connected Epson scanner.

Yeah, this is totally meant for usb. Maybe it‘s possible to have the same functionality for networked devices, but I don‘t have one, so I don‘t know

Thank your for your reply. I figured that epson network connections need a paring which the linux version of epsonscan2 apparently does not support. So USB it'll be! Thank you for your great work!


软件自动更新

Where is 软件自动更新.exe source code ?

In another project
https://github.com/dathlin/HslCommunication


Adding RouteHandler to App.js

I tried to replace {this.props.children] width   in App.js , but i always get error "Cannot read property 'toUpperCase' of undefined at autoGenerateWrapperClass".
What could be wrong?

That's funny. I just ran into this myself, like a minute ago. If you are wrapping a route to inject redux stuff, you've got to pass the children, yes. I hope to commit an example showing this later today, in case that's not clear.

This is what I mean.
<App user={user} {...bindActionCreators(authActions, dispatch)}>
  {this.props.children}
</App>;

Does that help?

Yes your example works, i was trying to to something like this
<RouteHandler {...bindActionCreators(authActions, dispatch)} />
Im not sure will it work.

No. <RouteHandler/> is for pre-1.0 react-router. Now we just use {this.props.children}. @mjackson, the react-router guy, explains it pretty well here.

Reopen if this is still a problem.


Fix issue ocaml-ci#381

Hi,
with @art-w we have been working on a fix for #381. The idea is to decouple the depext and the opam deps installation by unpinning the elements, installing the opam version and finally reinstalling the version from the opam files to only rebuild the related elements.  It also relies on the --only-packages flag from dune to build one package at a time.

Hello!
Thanks @dra27 for the quick review and catching the misplaced COPY . :) I pushed @maiste not to do the analysis as it sounded much harder to get right... and I thought he could get away without:

install the depexts For this we need to copy only the *.opam files, pin them (but no install since we don't have the sources), install their depexts, then unpin.  (installing the depext as required by the repo *.opam allow for the optional dependencies to trigger correctly in the next steps)

install all the dependencies This is just as before, with good caching (except if the opam files changed).
For the happyeyeball issue, this step installs the dns-client from opam... and also the happyeyeball from opam (as required by dns-client)

install the repo This is where we must COPY . everything and pin install all the *.opam files. This triggers an upgrade of happyeyeball and hence a reinstallation of dns-client (due to their weird double-repo setup, this wouldn't reinstall anything for normal users)

run the tests Finally, we need the --only-packages=X option for all X.opam, as otherwise dune tries to use the local files and this can conflict with the version used by the opam dependencies.

So... this is definitively a quick hack to unblock the issue by avoiding the dependency analysis. It does cost two packages reinstallations for happyeyeball/dns-client and a lost opportunity in parrallelism for dune build.
The lack of good dependency analysis has been coming up a few times in opam-related CI, so there's definitively something to do there (but I think it's much harder to get it right with optional dependencies, the different operating system, etc) @maiste will have to rebase and fix this PR anyway, so we can still ask him to explore that path? :D

I'm not following this issue closely, but one point: if the CI has to do all these tricks to build a project, then it's going to be really hard for users to build it from Git too!
Indeed, I just tried to clone this repository and build it:
$ git clone https://github.com/roburio/happy-eyeballs.git
$ cd happy-eyeballs
$ dune build
Error: Conflict between the following libraries:
- "happy-eyeballs" in _build/default/src
- "happy-eyeballs" in /home/user/.opam/4.12.0+domains/lib/happy-eyeballs
  -> required by library "dns-client.lwt" in
     /home/user/.opam/4.12.0+domains/lib/dns-client/lwt
  -> required by library "happy-eyeballs-lwt" in _build/default/lwt
-> required by executable test in app/dune:2
Error: Conflict between the following libraries:
- "happy-eyeballs" in _build/default/src
- "happy-eyeballs" in /home/user/.opam/4.12.0+domains/lib/happy-eyeballs
  -> required by library "dns-client.lwt" in
     /home/user/.opam/4.12.0+domains/lib/dns-client/lwt
Error: Conflict between the following libraries:
- "happy-eyeballs" in _build/default/src
- "happy-eyeballs" in /home/user/.opam/4.12.0+domains/lib/happy-eyeballs
  -> required by library "dns-client.mirage" in
     /home/user/.opam/4.12.0+domains/lib/dns-client/mirage

So perhaps we should regard the CI rejecting this as a feature?

I agree with you as there are not so many repositories following this interleaving structure.
We only have this trick of changing the dependency computation by moving the pinning stage. Maybe, the solver modification (as @dra27 suggested) will be a minor change and be more explicit as it won't modify anything apart from the dependency computation.
However, if we consider the rejection a feature, are we not sending the message that the CI rejects specific project structures? :confused:


[IA-3270][IA-3271] Reapply igvjs update and memory leak fix

After rolling back IA-3270 and IA-3271, we found that these changes were not the source of the problem. This PR is to reapply these changes.
Initial PRs:
https://github.com/DataBiosphere/terra-ui/pull/2909
https://github.com/DataBiosphere/terra-ui/pull/2911
Changes:

Fix a memory leak in loading the IGV viewer
Upgrade IGVjs to the latest version

@jordansafer did you want to post around for an approval from a relevant team?

@jordansafer did you want to post around for an approval from a relevant team?

@kyuksel, I shared in my team channel last week, but it looks like it slipped by :) . I'll find another pair of eyes-


CDDL test fails if invoked from the ouroboros-network nix-shell

Oddly, this failure is not apparent in the cardano-ledger-specs repo, but is in the ouroboros-network repo. I don't understand why not.
For example: this passed https://buildkite.com/input-output-hk/cardano-ledger-specs/builds/3354#a0beffde-857f-4159-bce7-4225f25f657c/721 and this failed https://buildkite.com/input-output-hk/ouroboros-network/builds/9627#420a7c47-fa4e-4c52-8eb2-ba5a41018a91

Ah ha, I had overlooked extras.cddl:
https://github.com/input-output-hk/cardano-ledger-specs/blob/19edce3fdd542758822557bedc5dc8bcaa61a271/shelley/chain-and-ledger/executable-spec/cddl-files/mock/extras.cddl#L18-L29
If I add that, it still fails, but with a more interesting error message.
[nix-shell:~/ouroboros-network]$ echo "h'2001020304050607080102030405060708'" | diag2cbor.rb - | cddl <(echo 'output = address'; cd /home/nfrisby/cardano-ledger-specs/shelley/chain-and-ledger/cddl-spec/; cat shelley.cddl mock/crypto.cddl mock/extras.cddl) validate - 1>catch 2>&1

[nix-shell:~/ouroboros-network]$ echo $?
1

[nix-shell:~/ouroboros-network]$ grep -v -e 'Unused rule' catch
CDDL validation failure (nil for " \x01\x02\x03\x04\x05\x06\a\b\x01\x02\x03\x04\x05\x06\a\b"):
[" \x01\x02\x03\x04\x05\x06\a\b\x01\x02\x03\x04\x05\x06\a\b",
 [:bytes, "p\x05\x06\a\b\x05\x06\x04\x03"],
 nil]

[nix-shell:~/ouroboros-network]$ echo "h'2001020304050607080102030405060708'" | diag2cbor.rb - | xxd
00000000: 5120 0102 0304 0506 0708 0102 0304 0506  Q ..............
00000010: 0708                                     ..

Note that the error message seems to have the input line duplicated.

Ah ha, I had overlooked extras.cddl:
https://github.com/input-output-hk/cardano-ledger-specs/blob/19edce3fdd542758822557bedc5dc8bcaa61a271/shelley/chain-and-ledger/executable-spec/cddl-files/mock/extras.cddl#L18-L29
If I add that, it still fails, but with a more interesting error message.
[nix-shell:~/ouroboros-network]$ echo "h'2001020304050607080102030405060708'" | diag2cbor.rb - | cddl <(echo 'output = address'; cd /home/nfrisby/cardano-ledger-specs/shelley/chain-and-ledger/cddl-spec/; cat shelley.cddl mock/crypto.cddl mock/extras.cddl) validate - 1>catch 2>&1

[nix-shell:~/ouroboros-network]$ echo $?
1

[nix-shell:~/ouroboros-network]$ grep -v -e 'Unused rule' catch
CDDL validation failure (nil for " \x01\x02\x03\x04\x05\x06\a\b\x01\x02\x03\x04\x05\x06\a\b"):
[" \x01\x02\x03\x04\x05\x06\a\b\x01\x02\x03\x04\x05\x06\a\b",
 [:bytes, "p\x05\x06\a\b\x05\x06\x04\x03"],
 nil]

[nix-shell:~/ouroboros-network]$ echo "h'2001020304050607080102030405060708'" | diag2cbor.rb - | xxd
00000000: 5120 0102 0304 0506 0708 0102 0304 0506  Q ..............
00000010: 0708                                     ..

Nothing is obvious to me :(

@redxaxder Realized that the cardano-ledger-specs and ouroboros-network Nix infra is sourcing the cddl differently.
cardano-ledger-specs uses cddl 0.8.10; we haven't determined what ouroboros-network is using.
This seems to be the most likely culprit.

ouroboros-network is using the cddl 0.8.9 Ruby gem. So this is likely a problem with ouroboros-network nix files.
Closing. Thanks @redxaxder!


FormControl File missing

creating a FormUI field for file uploads fails because there is no control.file.php in /system/controls/templates

Time has passed by ...


Only deploy ConfigMaps and Secrets if needed

Only deploy alerting ConfigMap and Secret if defined
Description
Previously, we deployed some resources even if they weren't used in the deployment. This reduces the number of instances where that happens
Checklist

[x] PR is rebased to/aimed at branch develop
[ ] PR follows Contributing Guide
[x] Added tests (if necessary)
[x] Extended README/Documentation (if necessary)
[x] Adjusted versions of image and Helm chart in values.yaml and Chart.yaml (if necessary)

Codecov Report
Patch coverage: 60.00% and project coverage change: -0.15 :warning:

Comparison is base (c63e173) 97.13% compared to head (2463b07) 96.98%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@             Coverage Diff             @@
##           develop     #958      +/-   ##
===========================================
- Coverage    97.13%   96.98%   -0.15%
===========================================
  Files           23       23
  Lines         1290     1293       +3
===========================================
+ Hits          1253     1254       +1
- Misses          37       39       +2

Impacted Files
Coverage Δ

connaisseur/config.py
95.61% <60.00%> (-1.69%)
:arrow_down:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

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


[Bug]: App Manifest should support the "none" health check type

What happened?
Currently if you set health-check-type: none in an App's manifest it will result in a 500 error from the API.
14:47 $ cf push dora
Pushing app dora to org o / space s as tdowney...
Applying manifest file /Users/tdowney/go/src/github.com/cloudfoundry/cf-acceptance-tests/assets/dora/manifest.yml...

Updating with these attributes...
  applications:
  - name: dora
    processes:
    - health-check-type: none
      memory: 2GB
      type: web
    default-route: true
Unexpected Response
Response Code: 500
Code: 0, Title: , Detail: {"errors":[{"detail":"An unknown error occurred.","title":"UnknownError","code":10001}]}

Looking at the logs on the API Shim you see an error like this:
1.643406468157222e+09	ERROR	SpaceManifestHandler	error applying the manifest	{"error": "CFProcess.workloads.cloudfoundry.org \"fe3170e6-ea94-475e-b53c-daeecb97fc9c\" is invalid: spec.healthCheck.type: Unsupported value: \"none\": supported values: \"http\", \"port\", \"process\""}
code.cloudfoundry.org/cf-k8s-controllers/api/apis.(*AuthAwareHandlerFuncWrapper).Wrap.func1
	/workspace/api/apis/auth_aware_handler.go:33
net/http.HandlerFunc.ServeHTTP
	/usr/local/go/src/net/http/server.go:2047
code.cloudfoundry.org/cf-k8s-controllers/api/apis.(*AuthenticationMiddleware).Middleware.func1
	/workspace/api/apis/authentication_middleware.go:76
net/http.HandlerFunc.ServeHTTP
	/usr/local/go/src/net/http/server.go:2047
github.com/gorilla/mux.(*Router).ServeHTTP
	/go/pkg/mod/github.com/gorilla/mux@v1.8.0/mux.go:210
net/http.serverHandler.ServeHTTP
	/usr/local/go/src/net/http/server.go:2879
net/http.(*conn).serve
	/usr/local/go/src/net/http/server.go:1930

What you expected to happen
I expected the cf push to succeed and that the process's health check type would ultimately be set to process (none is an alias of the process health check type).
Acceptance Criteria
GIVEN I have an app with a manifest that looks like
name: dora
processes:
  - type: web
    health-check-type: none

WHEN I cf push the
THEN I see that the push succeeded and that the web process's health check type is process
How to reproduce it (as minimally and precisely as possible)
See the A/C above.
Anything else we need to know?
No response
Environment
Revision of codebase: 91bd6dccbdc53fd79ef0731bea178a738711a6b8
Kubernetes version (use kubectl version): N/A
Cloud provider or hardware configuration: N/A
Others:

Closing, this was completed in https://github.com/cloudfoundry/korifi/pull/620.


Dedup src diffs between 2.10 & 2.11+

Fixes #233

I dropped https://github.com/sbt/zinc/pull/244/commits/a947ac8cd9bb891f8df05a23eae8c000fed6f054 makes reviewing 2.10 Compat changes much easier.

This is green now, after a few brain farts and a moment of IO flakiness.

Nice work. Could you rebase against the master plz?

@jvican ExtractUsedNamesSpecification is failing. Do you mind having a look?

Not at all! @dwijnand Will keep you posted tomorrow, I won't be very available but we'll try to have a look at this.

This is weird. I cannot reproduce locally from your branch.

No, wait, just reproduced.

Just opened https://github.com/dwijnand/sbt-zinc/pull/2 to merge my fixes into dwijand to pass the CI here.

CI passing. Waiting for another Zinc maintainer to sign off.


Prunes local tracking branches that do not exist on remote anymore

Here is a usage example :
❯ gfp
From git.example.com:example/repo
 - [deleted]         (none)     -> origin/feature/branch
Deleted branch feature/branch (was 4eaac1c).

inspired by : SO — how to prune local tracking branches that do not exist on remote anymore

So, this runs git fetch --prune then cleans up branches which don't exist any more. Is there any way to do the same operation without the fetch?
I like the idea, but this feels like a weird combination of a branch operation and fetching, which makes it a little confusing as to whether it should go under gfp or gbp.

You are right to say that this seems a little bit confusing (fetch x branch). But the idea is to fetch the remote server to see the existing branches and then remove the local branches that have no remote counterpart. But I do not have a strong opinion if we should go with gfp or gbp.

I'm just a user, but I'm not sure whether this is generic enough to end up in a framework. This looks more like a custom shell script than a generic Git alias for everybody.

I like the goal here, it's useful for everyone who contributes to an active multi-user git repo, so from that standpoint, I personally don't mind adding to prezto.
However, the last time I researched this, I backed away from adding it to my personal aliases because it was too dangerous. There are a lot of subtle edge cases, and to implement a generic command required making broad assumptions about all scenarios I was likely to encounter. I wasn't confident I'd remember to verify that all those assumptions held true when I ran the command against a repo.
Maybe things have changed or there's a lowest common denominator safety bar that could be used. Although in that case, I wonder if playing to the lowest common denominator takes away a lot of the power of this command, because it'd be so cautious at leaving a lot of branches.

I'm going to close this as none of the maintainers seem super enthusiastic about it, and potentially dangerous as a broad/generic use case.


Lightweight website design

Starting point: https://250kb.club/

CSS starting point: https://250kb.club/global.css
No JS
No fonts

The current front page weighs 25KB!


Allow checking for dropped files directly

See internal tickets/discussion for more details.

Closed by #67


Dedicated upload button for each mime types.

Purpose for this request is to give user-friendly for Flarum user want to upload file.
Dedicated fonticon button for each of these mime types: video, audio, image, pdf file.
Generic fonticon (attachment) button for another mime types support by upload extension.
Please take a look at Plush Flarum text editor for example:

I think it is not good idea - why to make it difficult, Flarum is a nice user friendly software with easy GUI

I am also not too happy about this though. If you can get people to upvote this issue (either by adding reactions to your post or by commenting), I'll reconsider.


(SUP-2911) MCollective/ActiveMQ Enabled/Exists

Please check off the steps below as you complete each step

[X] Put the Jira ticket number in parentheses in the Title e.g. (SUP-XXXX) Add Super Duper State Check
[X] Update the Jira ticket status to Ready for Review
[X] Update the Scoring Spreadsheet
[ ] Get a review from someone on the support team
[x] Get a review from @misseuropa, @davidbastedo, or @deleon365

The acceptance test count needs to be incremented to 27.
expect(host_inventory['facter']['self_service'].size).to eq(26)


[r] Question about new iterated reader for SOMASparseNDArray and coords

Passing coords to SOMASparseNDArray$read() (introduced in #1274) has no effect on the resulting object; this is necessary for reading arrays from queries (e.g. #1279)

@mojaveazure given commit https://github.com/single-cell-data/TileDB-SOMA/pull/1279/commits/9dfccc26f112e3d0a91e5e07bb50ee8c7c687dfa -- namely, where you're now using unname -- are we certain that coords is as non-functional as you believed when you created this issue?

@johnkerl Yes; the unname simply removes the names I was using for easier-to-understand code as SOMASparseNDArray$read() freaks out if coords is named but the names don't match SOMASparseNDArray$dimnames()
If you step into either query_private$.load_m_axis() (easy since I left a browser() in there 🤦) or query_private$.load_p_axis() on a sliced query, you'll find that reading still loads in the full shape, not the slice specified by coords

@mojaveazure have you checked the contents of the matrix? The shape is the same but the values should correspond to the coords you specified, this is also in accordance to the python api. There have been previous discussions on this behavior.
You are probably looking for a reshaping and likely reindexing functionality of the slices you are specifying.
Apologies, I’m away from my laptop and can’t test it on my own.
cc @bkmartinjr for visibility

Here's the demo, you can see that the size of sparse@x changes upon specifying coords
library(tiledbsoma)
human_experiment = load_dataset("soma-exp-pbmc-small")
x_sparse <- human_experiment$ms$get("RNA")$X$get("data")

# Full Matrix
sparse <- x_sparse$read()$sparse_matrix()$concat()
length(sparse@x)
# [1] 4456

# Slice
obs_ids <- 2:5
var_ids <- 2:5

sparse <- x_sparse$read(coords = list(obs_ids, var_ids))$sparse_matrix()$concat()
length(sparse@x)
# [1] 3

And using an "indexer" here is how to reindex and reshape (not sure if this is the most efficient way)
obs_indexer <- setNames(1:length(obs_ids), obs_ids)
var_indexer <- setNames(1:length(var_ids), var_ids)

sparse_reindexed <- Matrix::sparseMatrix(i=obs_indexer[as.character(sparse@i)],
                                          j=var_indexer[as.character(sparse@j)],
                                          x=sparse@x,
                                          dims=c(length(obs_indexer), length(var_indexer)),
                                          repr="T")

sparse_reindexed
# 4 x 4 sparse Matrix of class "dgTMatrix"
#
# [1,] . .        . .
# [2,] . .        . .
# [3,] . 4.074201 . .

@pablo-gar Then this is the wrong behavior; when coords is specified, the resulting matrix should be of that shape

@mojaveazure this is the correct behavior per the API specification. See what happens in python:
import tiledbsoma

experiment = tiledbsoma.open("apis/python/notebooks/data/sparse/pbmc3k")
sparse = experiment.ms["RNA"].X["data"].read(coords = [range(5), range(5)]).coos().concat()

sparse.non_zero_length
# 25

sparse.shape
#<PHONE_NUMBER>854773760,<PHONE_NUMBER>854773760)

To have the behavior you are specifying there are 3 options I can see moving forward:

You implement the re-indexing/re-shaping behavior where need it as in my comment above (this is what is done in from_anndata in the python API).
We provide a high-level  general-purpose API function to re-index/re-shape.
We change the default behavior of read() in the API specification -- this option is the least trivial and needs a longer discussion, some of which have happened and landed on the current behavior.
Other option(s) I may not bee seeing at the moment.

@mojaveazure  yeah the SOMA spec is a bit (intentionally?) vague on that point, the discussions on that were around the implementation of it. The methods .read().coos()/$read()$spase_matrix() do only get arrays of data with the specified coords -- the are no arrays that are materialized beyond the specified coords. This coords functionality also is quite literal in the indexing sense, e.g. if you get a slices with coords=[100,101,103] you can access them in the slice with those exact same indexes.
Now, I do agree that most end-users want a re-indexed/re-shaped version of slices but that removes some low-level capabilities for out-of-core operations, which is why I lean towards option 2.
Most of the discussions and decisions on this happened before my time on tiledbsoma and I (and others at CZI) faced the same confusion in the past with Python and had some conversations with @bkmartinjr about it, so it would be good to bring this up again with the full team.
@johnkerl Do you have any recommendations to bring visibility to Paul's request?

This is a duplicate of #1445

@mojaveazure please close this issue when you complete the seurat and bioconductor work

Completed


Add option for skipping groupby-ing on null dimension

When group-bying on multi-value dimension of non-null values only, we should use having clause after all unnecessary calculation for null is done. This PR make option for skipping null values from group-by.

Can you elaborate on the intended use case for omitting rows where some column has null values?
Also, can you run benchmarks against this patch, since it affects the main GroupBy row processing path?


[BUG] Selecting multiple images does not change the preview image to the most recently selected image

Describe the bug
When holding down shift and using arrow keys or holding control and selecting several images the preview on the right does not currently consistently update to the newest selected image
Version:
1.3
To Reproduce
Select any image and then hold down shift and use the arrow keys to select more images
OR
Select any image and then hold down control and select additional images with the mouse
Expected behavior
The preview should show the most recently selected image when selecting several images at once. Currently it only updates when using the left or right arrow and after moving to a new row.
Source Image or Screenshots
As you can see, the left-most selected image in the thumbnail array is still the active preview even though it was the first image selected in the batch

Thank you for the program, it's awesome so far <3

v1.4 only does this when selecting with the mouse. Using shift+cursor does not.


Is this still in active development

There's been little in the way of new releases in many many months and those who were active have either moved to their own thing or no longer active.
Should we consider this as no longer being actively maintained?

You are right @JamesBotterill , there aren't new release by a long time... I am more involved in our github organization, but i would really continue with AR.js. For this reason would be great if the ES6 feature see PR #116 will become a reality. I am helping on this side @MikiDi  that did a great job, It is not finished but i hope that it will be merged at least in the dev branch soon and that a new NPM package will be available. I think this a great step for AR.js that we have to accomplish. :slightly_smiling_face:

@JamesBotterill to add to @kalwalt's comment, I am planning to investigate using ground-plane detection to improve the realism of location-based AR at least. However, due to time constraints I can only do this in the summer months, June to September or thereabouts.

@JamesBotterill to add to @kalwalt's comment, I am planning to investigate the use of ground-plane detection to improve the realism of location-based AR at least, with an aim of placing 3D models realistically on the ground. I have been given some pointers on how to approach this by @ThorstenBux. However, due to time constraints I can only do this in the summer months, June to September or thereabouts.

@kalwalt @nickw1 That's great to hear, and yes ES6 would be great.


[P0] Arrow to go down to bounties not working if you are not connected

Blocked by the same issue causing https://github.com/Itheum/cNFT-gallery/issues/6

Solved.