[TEST] Adding helper methods to CommandExecutorCodes.Pan / CommandExe…

…cutorCodes.Kitchen, as well as unit tests for those
@pentaho/rogueone

Build Completed
:x: This pull request has errors. They will need to be addressed before it can be accepted. See below for more details. Some links are also available below for further assistance in addressing those issues.
Build Commands
mvn -B -f 'pom.xml' -pl 'engine' -P '!assemblies' -Dsurefire.runOrder=alphabetical -Daudit -amd clean install

Cleanup Commands
mvn -B -f 'pom.xml' -pl 'engine' -P '!assemblies' -amd build-helper:remove-project-artifact

Changed files
  engine/src/main/java/org/pentaho/di/base/CommandExecutorCodes.java
  engine/src/test/java/org/pentaho/di/kitchen/KitchenTest.java
  engine/src/test/java/org/pentaho/di/pan/PanTest.java

Newly Broken Tests:
org.pentaho.di.kitchen.KitchenTest.testKitchenStatusCodes:
:red_circle: java.lang.AssertionError
java.lang.AssertionError: expected: org.pentaho.di.base.CommandExecutorCodes$Kitchen<UNEXPECTED_ERROR> but was: org.pentaho.di.base.CommandExecutorCodes$Pan<UNEXPECTED_ERROR>
	at org.pentaho.di.kitchen.KitchenTest.testKitchenStatusCodes(KitchenTest.java:101)

Unit Test Coverage
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.

:warning: Coverage Changes (click to expand)
org.pentaho.di.base.CommandExecutorCodes.Kitchen

Branch Change: +25%
Complexity Change: -21.8% :small_red_triangle_down:
Instruction Change: -10.1% :small_red_triangle_down:
Line Change: -11.1% :small_red_triangle_down:
Method Change: -5.5% :small_red_triangle_down:

org.pentaho.di.job.entries.getpop.MailConnectionMeta

Branch Change: -1% :small_red_triangle_down:
Complexity Change: -1.5% :small_red_triangle_down:
Instruction Change: -0.3% :small_red_triangle_down:

org.pentaho.di.trans.steps.dbproc.DBProcMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.dimensionlookup.DimensionLookupMeta

Method Change: -1% :small_red_triangle_down:

org.pentaho.di.trans.steps.groupby.GroupByMeta

Branch Change: -1% :small_red_triangle_down:
Complexity Change: -1% :small_red_triangle_down:

org.pentaho.di.trans.steps.ifnull.IfNullMeta

Branch Change: -2% :small_red_triangle_down:
Complexity Change: -1.9% :small_red_triangle_down:
Instruction Change: -0.2% :small_red_triangle_down:

org.pentaho.di.trans.steps.ldapoutput.LDAPOutputMeta

Instruction Change: -0.1% :small_red_triangle_down:

Build Completed
:fire: This pull request has some issues. It would be preferable to fix them in order for it to be just perfect. See below for more details. Some links are also available below for further assistance in addressing those issues.
Build Commands
mvn -B -f 'pom.xml' -pl 'engine' -P '!assemblies' -Dsurefire.runOrder=alphabetical -Daudit -amd clean install

Cleanup Commands
mvn -B -f 'pom.xml' -pl 'engine' -P '!assemblies' -amd build-helper:remove-project-artifact

Changed files
  engine/src/main/java/org/pentaho/di/base/CommandExecutorCodes.java
  engine/src/test/java/org/pentaho/di/kitchen/KitchenTest.java
  engine/src/test/java/org/pentaho/di/pan/PanTest.java

Unit Test Coverage
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.

:warning: Coverage Changes (click to expand)
org.pentaho.di.job.entries.evalfilesmetrics.JobEntryEvalFilesMetrics

Branch Change: -0.4% :small_red_triangle_down:
Complexity Change: -0.5% :small_red_triangle_down:
Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.job.entries.waitforsql.JobEntryWaitForSQL

Branch Change: -0.8% :small_red_triangle_down:
Complexity Change: -1% :small_red_triangle_down:
Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.dimensionlookup.DimensionLookupMeta

Method Change: -1% :small_red_triangle_down:

org.pentaho.di.trans.steps.groupby.GroupByMeta

Branch Change: -1% :small_red_triangle_down:
Complexity Change: -1.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.memgroupby.MemoryGroupByMeta

Branch Change: -1.1% :small_red_triangle_down:
Complexity Change: -1.3% :small_red_triangle_down:

org.pentaho.di.trans.steps.replacestring.ReplaceStringMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.sort.SortRowsMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.tableoutput.TableOutputMeta

Branch Change: -0.9% :small_red_triangle_down:
Complexity Change: -0.8% :small_red_triangle_down:

org.pentaho.di.trans.steps.textfileinput.TextFileInputMeta

Branch Change: -0.5% :small_red_triangle_down:

org.pentaho.di.trans.steps.gpload.GPLoadMeta

Branch Change: -0.9% :small_red_triangle_down:
Complexity Change: -0.8% :small_red_triangle_down:
Instruction Change: -0.2% :small_red_triangle_down:

org.pentaho.di.trans.steps.salesforceupsert.SalesforceUpsertMeta

Instruction Change: -0.1% :small_red_triangle_down:


Feature request - cached files within smart apps

As a user i would want to be able to utilise a utiliatly method which would allow me to call json files which are static and provide a method of caching the result for future runs to avoid multiple web calls.
This method should allow generic caching of a json output (unique per app) as well as caching of a json output based on a key which when changed would require the cache to be reloaded.
For my usecase example, i would want to query and cache
https://static.developer.riotgames.com/docs/lol/maps.json
and
https://static.developer.riotgames.com/docs/lol/queues.json
but re-query it
when a new version appears in https://ddragon.leagueoflegends.com/api/versions.json position 0

Even for the https://ddragon.leagueoflegends.com/api/versions.json call it might be nice to cache but clear it every 12 hours or something


[feature] template

Having a template system would be great, so that the whole presentation has a particular look.
Maybe even have a system where one can choose per slide from a pre-defined templates

Indeed, I guess there are two types of templates that could be useful for the user:

content templates (title slide, slide with few bullet points, slides with more text, slides with pictures, ...)
design templates (definition of fonts, colours, etc.)

For slides where custom design templates are used, changing the OC theme from light to dark mode or vice versa shouldn't affect how the slides (background colour, font colour, etc. ), only UI elements of web.
see also https://github.com/JankariTech/web-app-presentation-viewer/issues/17#issuecomment-1945474120

shall we split this into two separate issues? I personally think the content templates have higher priority than the design templates...

shall we split this into two separate issues? I personally think the content templates have higher priority than the design templates... the later is kind of connected to this issue

^ @grgprarup Could you help to decide on it?

shall we split this into two separate issues? I personally think the content templates have higher priority than the design templates... the later is kind of connected to this issue

^ @grgprarup Could you help to decide on it?

IMO there is no need for separation in this issue. This issue will focus on the templating system, and implement the different types of templates for slides as examples in content templates (https://github.com/JankariTech/web-app-presentation-viewer/issues/21#issuecomment-1945897864). For the latter, we have an open issue https://github.com/JankariTech/web-app-presentation-viewer/issues/10

ok, let's add the aspect of custom themes to https://github.com/JankariTech/web-app-presentation-viewer/issues/10
I guess this is the core of this feature request is this:
As a user
I want to select from different content types of slides in my presentation
So that I can create a presentation where each slide suits the content I want to present

by types content types we're talking about things like

title slide
subtitle slide
slide with bullet point list
slide with text and image
two columns text slide
image slide
multi image slide
...

@individual-it @grgprarup please comment

This project can be used for the templates (content types): https://github.com/JankariTech/revealjs-awesoMD


Cannot naviagate to elements in adaptivecards.io website

Cannot navigate to TextWeight, TextSize etc. in http://adaptivecards.io/explorer/#TextBlock.

Our latest site refresh fixes that previously broken link, thanks for reporting!


Modified README.MD as per changes discussed on https://github.com/kubeflow/spark-operator/pull/2062

🛑 Important:
This PR is for the change proposed in https://github.com/kubeflow/spark-operator/issues/2061
Purpose of this PR
The PR aims at providing the new CNCF slack Channel details so that new users can go to new slack channel instead of old slack channel which is going to be archived soon.  See details here (https://github.com/kubeflow/spark-operator/issues/2061)
Proposed changes:

Update slack channel to CNCF Slack channel

Change Category
Indicate the type of change by marking the applicable boxes:

[ ] Bugfix (non-breaking change which fixes an issue)
[ ] Feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that could affect existing functionality)
[x] Documentation update

Rationale
Users are currentl joining the old slack channel instead of the new one
Checklist
Before submitting your PR, please review the following:

[x] I have conducted a self-review of my own code.
[x] I have updated documentation accordingly.
[ ] I have added tests that prove my changes are effective or that my feature works.
[x] Existing unit tests pass locally with my changes.

@vara-bonthu this is the new PR for the changes in README.md
Can you please review this one?

@yuchaoran2011 tagging you for a review

closes #2061

resolves #2061


Add a way to know when an app has been spanned from a particular widget

It would be helpful to have a way to know if an app has been spanned from a particular widget. For example, let's say we have a list of items as the child for our TwoPageLayout, and a DetailView widget representing the contents of an item in the list. When not spanned, you'll see the list of items, and tapping on an item brings you into the DetailView to see the contents for that item, like so:

When spanned, you'll see the list on the left and the DetailView on the right, like so:

This is all fine, except when spanning from within the DetailView. So when not spanned, you tap on an item, and from the DetailView you span the app. You'd expect to see the list on the left again, right? What actually happens is that the DetailView will span across both screens:

It would therefore be useful to be able to tell when we have spanned from a particular widget.

Can you do this from the MultiScreenInfo widget? There is a note in the readme about it.
class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: MultiScreenInfo(
        builder: (info) {
          return Column(
            children: <Widget>[
              Text('isAppSpanned: ${info.isSpanned}'),
            ],
          );
        },
      ),
    );
  }
}

I do actually use MultiScreenInfo above the DetailView widget, and it does say the app is spanned in the context of the final screenshot from above. While technically correct, it doesn't provide enough information about the span. I don't know if it's possible, but knowing where the span started from would be useful. Perhaps some optional identifier could be added to TwoPageLayout that would say "if spanned from this widget, rebuild to initial layout" or something like that?

I think I see what you are saying. I am working on more examples and master/detail is one of the use cases I haven’t spent enough time on yet. I'll recreate and see how it goes. The use case definitely makes sense.

Thanks! You can find my full sample of this here: https://github.com/GroovinChip/surface_duo_flutter_experiment/tree/iteration_4

If you are interested, checkout my super rough idea of how maybe to do this.
https://github.com/MisterJimson/multi_screen_layout/tree/master-detail
I think there is definitely possibility to make this type of thing easier to do, but this does work.

I'll check this out on Monday, thank you!

This works quite well, thank you!


Some doubt with line75 code in frontend.py

Hi!
I think that this line is used to extract the detection layer to do futher processing, but the detection layer is the last layer, so I just doubt that this code should be "layer = self.model.layers[-1]", rather then "layer = self.model.layers[-4]".

Hi,
I think, self.model.layers[-4] is correct, since the last three layers are the conv layer, a reshape and the lambda and you want to initialize the weights between the last layer of your backend (should be layers[-4]) and your new conv layer, which is responsible for detection.
Note that there is a difference in writing layers in a paper and actual implemented layers. For example, nobody would mention reshapes and lambdas as a layer in a paper but there are still necessary layers for the implementation.

Got it. I was wrong, thank you very much!


Rebase

fix url

The Artifact Hub is another place you can list your repos. To do that, you login (or create an account), create an organization, and list your repository. You can link it to a user or organization.

@cube are you ok being listed as a maintainer?

absolutely.

@adirgit84 @adirc-rnd I would suggest using more descriptive descriptions on your charts.


Changed 'reproduce' to 'eliminate' in Bug Report

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] All the files I changed are in the same world language (for example: only English changes, or only Chinese changes, etc.)
[x] My changes do not use shortened URLs or affiliate links.

Closes #XXXXX

Thanks for the PR, but 'reproduce' is the correct term, here.  We want to be able to confirm that the bug exists, i.e. reproduce it.


Update Readme

This PR rewrites our README.md to be more modern and include additional information.
This readme has currently become somewhat dated, and while this adds more recent information and terminology it also attempts to add various improvements to the format and readability of the document.

@Daeraxa if you find the time, a review here would be appreciated!

@Daeraxa I've addressed all recommendations, except this last one. Otherwise thanks a ton for the review! I really appreciate it


findutils does not provide the command locate

Describe the bug
findutils does not provide the command locate, but command-not-found claims that one can use nix-shell -p findutils to use the command locate.
Metadata

system: "x86_64-linux"
host os: Linux 6.1.69, NixOS, 23.11 (Tapir), 23.11.2561.b0b2c5445c64
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.18.1
channels(root): "nixos-23.11, nixos-hardware"
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos

Add a :+1: reaction to issues you find important.

According to the long.description:

  The tools supplied with this package are:

      * find - search for files in a directory hierarchy;
      * xargs - build and execute command lines from standard input.

  The following are available in the locate output:

      * locate - list files in databases that match a pattern;
      * updatedb - update a file name database;

So to use locate you have to do:
nix-shell -p findutils.locate

Then it seems like it's a case that command-not-found does not consider.

Yes, it is a known problem that cnf doesn't know about outputs.
Closing as dupe of #129713


File explorer jumps when focusing via keybinding even if the file was visible

Repro:

Open a folder with lots of files
Expand some folders so it fills the explorer
Click a file
Press ctrl+shift+e, even though the file is visible, the explorer will be centered on the file which is disorienting

Yes I also dislike this behavior.
fyi @sandy081 I changed that we no longer pass the scroll top property to the tree (check the commit). Please check if this breaks some other behavior you might be reliying on, but I think this fix is proper as it will reduce overall tree scrolling

@isidorn This is mainly used by File explorer I suppose.

Cool, let's just keep our eyes open for regressions.

Might not be fully fixed for november, will be tackled fully via https://github.com/Microsoft/vscode/issues/63406 in december

The core issue is fixed but still have some issues which I'll comment over on #63406


Extracting optical frames

First of all thank you for this research paper
When I issue this command
bash scripts/extract_optical_flow.sh SRC_FOLDER OUT_FOLDER NUM_WORKER
Then it prints the video length as 0. It does not detect the videos

I found the solution
The folder at the path SRC_FOLDER should contain sub  folders which should contain the videos


Update Blog “close-encounters-1”

Automatically generated by Netlify CMS

👷 Deploy Preview for famous-kulfi-ae21db processing.

Name
Link

🔨 Latest commit
9756ac8ade0c90e06639d700e3fcdcdd20eda41a

🔍 Latest deploy log
https://app.netlify.com/sites/famous-kulfi-ae21db/deploys/658b15d05c31bf0008eba9d7


pam: add support for pam_gnupg

Motivation for this change
Adds support for pam-gnupg to the pam
module. This PR depends on #78143.
How I'm using this
In configuration.nix:
  security = {
    pam = {
      services =
        let defaults = {
              gnupg = {
                enable = true;
                noAutostart = true;
                storeOnly = true;
              };
            };
        in {
          login = defaults;
          i3lock = defaults;
          i3lock-color = defaults;
        };
    };
  };

(The interface for the pam module is pretty rough, but at least this PR
doesn't make things worse).
In home.nix:
    home.file.".pam-gnupg".text = ''
      <keygrips go here>
    '';
    services.gpg-agent = {
      enable = true;
      enableSshSupport = true;
      extraConfig = ''
        allow-preset-passphrase
      '';
      maxCacheTtl = 168000; # preset passphrase from pam-gnupg expires after max-cache-ttl
      maxCacheTtlSsh = 168000;
    };

Things done

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

[X] NixOS
[ ] macOS
[ ] other Linux distributions

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

  security = {
    pam = {
      services =
        let defaults = {
              gnupg = {
                enable = true;
                noAutostart = true;
                storeOnly = true;
              };
            };
        in {
          login = defaults;
          i3lock = defaults;
          i3lock-color = defaults;
        };
    };
  };

Why do you need to copy the defaults to each of login, i3lock, and i3lock-color? What's the effect of this?

It adds the corresponding lines to /etc/pam.d/{login,i3lock,i3lock-color}:
# Authentication management.
...
auth optional /nix/store/qs5in5w7b0naw831qbwh9gn6x33iqwpi-pam_gnupg-0.1/lib/security/pam_gnupg.so store-only
...
# Session management.
...
session optional /nix/store/qs5in5w7b0naw831qbwh9gn6x33iqwpi-pam_gnupg-0.1/lib/security/pam_gnupg.so no-autostart

(actually, it seems on my system i3lock-color is a symlink to i3lock); the pam module itself is quite confusing, which is what I meant by the interface is quite rough…
It absolutely needs to go into /etc/pam.d/login, because the whole point is your login password gets forwarded to gpg-agent. It's in /etc/pam.d/i3lock for a similar reason; the idea being that when i3lock starts it can flush your password from gpg-agent, and when you unlock it can forward your password again.

Hmm, I couldn't get this work for me :/. I used your configuration except the i3login stuff and manually edited my ~/.gpg-agent.conf:
pinentry-program /home/doron/.bin/pinentry

allow-loopback-pinentry

enable-ssh-support
# no-allow-external-cache
max-cache-ttl = 168000
allow-preset-passphrase

default-cache-ttl 7200

I "enable" gpg-agent via:
    programs.gnupg = {
      agent = {
        enable = true;
        enableBrowserSocket = true;
        enableExtraSocket = true;
        pinentryFlavor = null;
        enableSSHSupport = false;
      };
      dirmngr.enable = true;
    };

I'm using Gnome & GDM.

Can you confirm that you have something like:
❯ cat /etc/pam.d/login | grep gnupg
auth optional /nix/store/qs5in5w7b0naw831qbwh9gn6x33iqwpi-pam_gnupg-0.1/lib/security/pam_gnupg.so store-only
session optional /nix/store/qs5in5w7b0naw831qbwh9gn6x33iqwpi-pam_gnupg-0.1/lib/security/pam_gnupg.so no-autostart

Also, have you made sure that your login password and your GPG password are the same?

Can you confirm that you have something like:

Yes.

Also, have you made sure that your login password and your GPG password are the same?

That wasn't the case when I wrote my previous comment, but even now that it is, it's not working. What I expect to work is the gpg-agent to have a "password cached" (Using gpg --decrypt after login, I expect it to not ask me for a password (considering also the modifications to gpg-agent.conf). I also couldn't find any mentions of pam_gnupg.so in journalctl --boot | grep pam:
Oct 14 12:17:53 ZENIX systemd[1126]: pam_unix(systemd-user:session): session opened for user gdm by (uid=0)
Oct 14 12:18:15 ZENIX gdm-password][1731]: gkr-pam: unable to locate daemon control file
Oct 14 12:18:15 ZENIX gdm-password][1731]: gkr-pam: stashed password to try later in open session
Oct 14 12:18:15 ZENIX gdm-password][1731]: pam_unix(gdm-password:session): session opened for user doron by (uid=0)
Oct 14 12:18:15 ZENIX systemd[1737]: pam_unix(systemd-user:session): session opened for user doron by (uid=0)
Oct 14 12:18:15 ZENIX gdm-password][1731]: gkr-pam: gnome-keyring-daemon started properly and unlocked keyring

Gnome keyring is failing there is due to the fact my login gnome keyring store uses my old login password.

Did you also add your keygrip to ~/.pam_gnupg?

I thought it's ~/.pam-gnupg - as in your home.nix. Switching to it didn't help, I also added the defaults to systemd-user as well as it seems maybe gdm is using it? Don't know.
Here is the output of gpg -K --with-grip:
/home/doron/.gnupg/pubring.kbx
------------------------------
sec   dsa3072 2019-02-09 [SC]
      988D757E0D84771930E7047EBB1D362238FABF47
      Keygrip = 482908DDD3EAA1CDFD23DDE619D5DA390CF9DD3F
uid           [ unknown] Doron Behar (Password encryptions<EMAIL_ADDRESS>ssb   elg3072 2019-02-09 [E]
      Keygrip = A85E4FC6C29CD42DB9DACBB14871FBABAAC9BC95

And:
$ cat ~/.pam_gnupg
A85E4FC6C29CD42DB9DACBB14871FBABAAC9BC95

I chose the subkey because when I gpg --decrypt:
┌────────────────────────────────────────────────────────────────┐
│ Please enter the passphrase to unlock the OpenPGP secret key:  │
│ "Doron Behar (Password encryptions<EMAIL_ADDRESS>     │
│ 3072-bit ELG key, ID 16EB537E47DAEB9D,                         │
│ created 2019-02-09 (main key ID BB1D362238FABF47).             │
│                                                                │
│                                                                │
│ Passphrase: __________________________________________________ │
│                                                                │
│         <OK>                                    <Cancel>       │
└────────────────────────────────────────────────────────────────┘

Sorry, I meant ~/.pam-gnupg; I don't get anything in the journal about this pam module either, but it's definitely working for me.
Do you have $GNUPGHOME set, i.e. is your GPG stuff somewhere other than ~/.gnupg? If so, you'll need to set it in ~/.pam_environment like it says here

You mentioned ~/.gpg-agent.conf but for me (and by default) this file is located at ~/.gnupg/gpg-agent.conf

That's my mistake. I am using ~/.gnupg/gpg-agent.conf.

Do you have $GNUPGHOME set, i.e. is your GPG stuff somewhere other than ~/.gnupg? If so, you'll need to set it in ~/.pam_environment like it says here

No. Regular ~/.gnupg.

Sorry, I meant ~/.pam-gnupg; I don't get anything in the journal about this pam module either, but it's definitely working for me.

Using ~/.pam-gnupg now. Tried the subkey and the main key keygrips both. Tried using noAutoStart = false;, and storeOnly = false; and it didn't help. I suspect it's an issue with gdm..
That's as far as I can help. Sorry.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/338

I'm just going to merge this seeing as it works for me. It faithfully implements the instructions here, and I'm not sure what more you could ask for in a NixOS module. We could always reopen this if it's not working for someone else. For what it's worth, I'm using lightDM in its default configuration.

BTW a few days ago I noticed my gpg agent doesn't cache passwords at all, something GNome related... So probably it was my fault back then it didn't work.

@NickHu thanks for this PR, for me works :)
@doronbehar to make it work with gdm, use pam.serivices.gdm, looks like login is not enough, you can take a look to my dotfiles:
https://github.com/jlesquembre/dotfiles/blob/faece9e9b65c947ca9c676f2d60b9906281661f2/modules/common-configuration.nix#L364-L379
Not sure if relevant, but notice that I manage the gpg-agent with NixOS, not home-manager (although I use home-manager for the .gnupg files: https://github.com/jlesquembre/dotfiles/blob/faece9e9b65c947ca9c676f2d60b9906281661f2/home-manager/common.nix#L201-L215 )


Specified GPU problem

Hello, how to specify GPU training? I can't find the part of the code that needs to be changed. Thank you!

Hi,
Training and evaluation scripts will run by default on GPUs using ddp. You can set the number of GPUs via the --gpus flag when running the scripts.

Thank you! but If I have eight graphics cards : 0,1,2,3,4,5,6,7,8, the first two graphics cards : 0,1 cannot be used, and only the last six graphics cards can be used : 2,3,4,5,6,7, how do I do that, how do I specify the last six graphics cards?

Hi,
In this case, set --gpus to 6 and you have to set the environment variable to limit the GPUs visible to python. You can do this using
CUDA_VISIBLE_DEVICES=2,3,4,5,6,7 python3 humus_examples/train_humus_fastmri.py \
--config_file PATH_TO_CONFIG \
--data_path DATA_ROOT \
--default_root_dir LOG_DIR \
--gpus 6

or if you are using jupyter-notebook you can set
%env CUDA_VISIBLE_DEVICES=2,3,4,5,6,7

before running your code.

OK, Thank you! I will try. One last question, how long did it take you to run the code on the fastmri data set with 8 graphics cards at the same time? Because I spent a week running only 11 epochs with two graphics cards (3090)

It takes around 5-7 days on 8 GPUs to train the default size network on the training dataset. If you have extra GPU memory, you can speed up training by only checkpointing a subset of the cascades here.


Enable Hero Change in Long Mode

So i am the type of player who likes a long chilled game, and yesterday after i finished farming all the items , the game just started to be boring. There wasnt a lot of fighting early game and the opponents rarely got out of the fountain. So maybe inplementing changing hero would be fun. Would also be good for heroes who dont have AOE farm but are strong. Just My opinion. Also i guess there is a lack of new items imo. Just the game got boring and I quit a game after 45 mins.

Your game sounds atypical. Most of what we've seen involves intense fighting around stealing creep camps, and later bosses.

Hero changing is currently intended to not to be in gamemod


Build docker image for PR

This PR adds the ability to build the docker image for the mattermost application.
This is the foundation to use the new test servers using the mattermost cloud infrastructure.
every PR will build the docker image and tag with the short commit hash.

working :) docker pull mattermost/mattermost-enterprise-edition:f45e742


can't load .txt file in shiny

Dear Julian,
I'm trying to analyze some data using CeTrAn via shiny. I'm running it in a Linux machine. I can set the output and input directory, however, I can't load the file table (txt file) properly. What I got is the following:
example of .txt file:
abc.xml    def
example of what I get in shiny:
V1
a
b
c
.
x
m
l
d
e
f
I also tried to load your .txt file (groupscs.txt) and I got the same result.
Any suggestion?
Thanks in advance,
Mercedes.

I forgot to mention that when I use R base, I can load the file perfectly fine. By running the following:
data<-read.csv("~/groupscs.txt", sep = "\t", header=FALSE)

Hi
I think shiny integration was never finished and people use the published v4 release version.
I have no capacity to solve the problem at the moment but could point the direction if someone want to upgrade cetran.
I am quite surprised it still runs actually...
Am 18. Oktober 2019 13:22:46 MESZ schrieb mechichis<EMAIL_ADDRESS>
Dear Julian,
I'm trying to analyze some data using CeTrAn via shiny. I'm running it
in a Linux machine. I can set the output and input directory, however,
I can't load the file table (txt file) properly. What I got is the
following:
example of .txt file:
abc.xml    def
example of what I get in shiny:
V1
a
b
c
..
x
m
l
d
e
f
I also tried to load your .txt file (groupscs.txt) and I got the same
result.
Any suggestion?
Thanks in advance,
Mercedes.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jcolomb/CeTrAn/issues/12

--
Diese Nachricht wurde von meinem Android-Gerät mit K-9 Mail gesendet.


Code cleanup & refacto

The objective of this PR is to clean the deprecated code, and make the module easier to maintain.
However, the existing interface & features remain the same, don't expect to see changes during the upgrade process.
Information

Compatibility range: PS 1.6 & 1.7

Documentation
https://docs.google.com/document/d/1DQMP6bg5_fgbJQScdidCQCEmAi4MzRgYNhdGVcYOqm4/edit?usp=sharing
To do list:
General

[x] Clean deprecated code for backward compatibility with unsupported versions
[x] Add composer and its autoloader
[x] Tests
[x] Add entrypoint for whole upgrade process

Templating

[x] 1 - Export all content to display outside the controller
[x] 2 - Use another templating system for the exported content (Twig? VueJs?)

Classes (features)

[ ] Release entity
[ ] Release manager (download, comparison ...), currently Upgrader.php
[x] Upgrade channel manager
[x] Logger (existing one seems to be unused)
[x] Module configuration
[x] JSON Response generator
[x] Destination version of PS checker (allowing the module to use the proper adapter)
[x] Error handler
[ ] Guzzle for API addons

Improvements

[ ] Check all server requirements are ok before starting upgrades
[ ] In case of error, output all log waiting to be displayed

Upgrades

[x] From 1.7 to 1.7
[x] From 1.6 to 1.7
[x] From 1.6 to 1.6

Closer and closer... let me know when it would be ready to do some tests @Quetzacoalt91 :)

You may go for it! The latest commits are precisely fixing some bugs detected during the tests. :)

Cool! I'll try to run some tests on few stores today, starting from default 1.6 version, i'll let you know about results

Hey @Quetzacoalt91
https://github.com/Quetzacoalt91/autoupgrade/blob/87a227b1fd950ceaf1dc8ad8e3879884b14c35c1/classes/Parameters/UpgradeConfiguration.php#L93
you should have -1 here, there's no 3 in array and i get:
modules\autoupgrade\classes\Parameters\UpgradeConfiguration.php line 61 - Undefined offset: 3

Even after this change the process went completely wrong, in few 30 seconds everything stopped because ajax returned maintenance page on response, what is much weirder i cannot access back-office right now because it was erased by upgrader for some reason
Result: entire store broken
I was testing <IP_ADDRESS>, clean installation.

@kpodemski Sounds like you should do the same change for 'loopFiles', 'loopTime', 'maxBackupFileSize' and 'maxWrittenAllowed'

Ha yes, I though you were suggesting to do the -1 in each getter which was using getPerformanceLevel :)

Thanks for your report @kpodemski, I'll review this.
I'll reproduce your upgrade. You said you starred a fresh shop on 1.6.18 and upgraded it on 1.7?
(Weird because this what we are supposed to test on Travis)

@Quetzacoalt91 yeah, to be honest at first i wanted to upgrade "real" store but then i thought that i should have start from the easiest scenario possible, clean installation, right after installation went to the upgrade process...
first try, set performance to "High", first error, solved, trying again, maintanance page because of deletion my /back-office/ administration directory

I tried and it worked, there is probably another test case to find.
I wonder if there is an issue when then admin folder is different from admin and admin-dev?

@Quetzacoalt91 yeah well, it might be, but admin folder name is always randomized, in my case that was /back-office/ but sometimes is /123123sadasd/ etc.
I can try with admin-dev

@Quetzacoalt91 i'm happy to write that everything went perfectly using /admin-dev/ as a name of admin folder, next step for me is to test it on some bigger project instead of clean installation
i'll keep you posted :)

One suggestion:

update translations after the upgrade, most of the back-office was completely outdated when it comes to translations, of course i did that manually but it would be cool to have it as an option or by default

The previous version is already supposed to update the languages, as exported in the new CoreUpgrader classes:

https://github.com/Quetzacoalt91/autoupgrade/blob/8253c85e7f5e67bd19277c914fc39381c2a0df7e/classes/UpgradeTools/CoreUpgrader/CoreUpgrader.php#L470-L495
https://github.com/Quetzacoalt91/autoupgrade/blob/8253c85e7f5e67bd19277c914fc39381c2a0df7e/classes/UpgradeTools/CoreUpgrader/CoreUpgrader17.php#L65-L92

On my side, the menu entries weren't translated, but the other parts of the back-office seemed fine.

Error handler has been improved to flush the queued logs in case of error. It used to display only the last error.
Test case:

@Quetzacoalt91 have you tried to upgrade with a name of admin directory different than admin and admin-dev?

@kpodemski yep, I tried with something like hahaha1234.
I your server running under Windows? I haven't tried this environment yet.

@Quetzacoalt91 yeah, i've tried with an back-office name on Windows and admin-dev on OSX, back-office is problematic

I have to test it with IIS as well, but I can already tell that it works with Apache. Interesting module errors though.


Command 'CMake: Quick Start' not honoring workspace cmake.sourceDirectory

Brief Issue Summary

When I try to create a new CMakeLists.txt file for a new project, I find that it fails because it is trying to access files in ${workspaceFolder}/Maya - which happens to be the cmake.sourceDirectory that is set at the User level.
This particular project was created new, so the cmake.sourceDirectory for the workspace was set to just ${workspaceFolder}.
It appears that the CMake: Quick Start feature is not honoring the workspace cmake.sourceDirectory setting.

The error I am seeing is:
[rollbar] Unhandled exception: Unhandled Promise rejection: quickStart Error: ENOENT: no such file or directory, open '/home/myusername/Build/Autodesk/maya/test-qopenglwindow/Maya/main.cpp' {} [main] Configuring folder: test-qopenglwindow
User cmake.sourceDirectory: ${workspaceFolder}/Maya
Workspace cmake.sourceDirectory: ${workspaceFolder}
This occurs with CMake Tools v1.8.1 running on centOS 7.9.2009, cmake 3.17.5.
Note: I have replaced my username with myusername in the logs below. Everything else remains the same.
CMake Tools Diagnostics

>CMake: Log Diagnostics command search failed. Instead, below is the output of the CMake/Build log I can access from the Output pane.
<!-- Paste the `CMake: Log Diagnostics` output HERE -->
[rollbar] Unhandled exception: Unhandled Promise rejection: quickStart Error: ENOENT: no such file or directory, open '/home/myusername/Build/Autodesk/maya/test-qopenglwindow/Maya/main.cpp' {}
[main] Configuring folder: test-qopenglwindow

Debug Log

[main] Safe constructing new CMakeTools instance
[variant] Constructing VariantManager
[main] Constructing new CMakeTools instance
[main] Starting CMakeTools second-phase init
[rollbar] "sourceDirectory" is not a directory {"sourceDirectory":"/home/myusername/Build/Autodesk/maya/test-qopenglwindow/Maya"}
[variant] Loaded new set of variants
[main] CMakeTools instance initialization complete.
[kit] Reading kits file /home/myusername/.local/share/CMakeTools/cmake-tools-kits.json
[kit] Successfully loaded 2 kits from /home/myusername/.local/share/CMakeTools/cmake-tools-kits.json
[kit] Not reading non-existent kits file: /home/myusername/Build/Autodesk/maya/test-qopenglwindow/.vscode/cmake-kits.json
[rollbar] "sourceDirectory" is not a directory {"sourceDirectory":"/home/myusername/Build/Autodesk/maya/test-qopenglwindow/Maya"}
[main] Injecting new Kit into CMake driver
[extension] [6945] cmake.buildType started
[extension] [6945] cmake.buildType finished (returned "Debug")
[extension] [6692] cmake.buildDirectory started
[main] Starting new CMake driver
[main] Starting CMake driver
[main] Using generator from user configuration: Ninja
[cmakefileapi-driver] Creating instance of CMakeFileApiDriver
[driver] Initializating base driver using kit
[kit] Testing GCC binary: /opt/rh/devtoolset-9/root/usr/bin/x86_64-redhat-linux-gcc-9
[proc] Executing command: /opt/rh/devtoolset-9/root/usr/bin/x86_64-redhat-linux-gcc-9 -v
[kit] Detected GCC compiler: /opt/rh/devtoolset-9/root/usr/bin/x86_64-redhat-linux-gcc-9
[driver] CMakeDriver Kit set to GCC 9.3.1 x86_64-redhat-linux
[driver] Run _refreshExpansions
[driver] Run _refreshExpansions cb
[rollbar] "sourceDirectory" is not a directory {"sourceDirectory":"/home/myusername/Build/Autodesk/maya/test-qopenglwindow/Maya"}
[driver] Setting new variant Debug
[driver] Run _refreshExpansions
[driver] Run _refreshExpansions cb
[rollbar] "sourceDirectory" is not a directory {"sourceDirectory":"/home/myusername/Build/Autodesk/maya/test-qopenglwindow/Maya"}
[extension] [6692] cmake.buildDirectory finished (returned "/home/myusername/Build/Autodesk/builds/test-qopenglwindow/maya/Debug")
[cache] Reading CMake cache file /home/myusername/Build/Autodesk/builds/test-qopenglwindow/maya/Debug/CMakeCache.txt
[cache] Cache file does not exist: Returning empty cache data
[extension] [8213] cmake.quickStart started
[rollbar] Unhandled exception: Unhandled Promise rejection: quickStart Error: ENOENT: no such file or directory, open '/home/myusername/Build/Autodesk/maya/test-qopenglwindow/Maya/main.cpp' {}
[rollbar] Unhandled exception: Unhandled Promise rejection: Post-folder-open Error: Running the contributed command: 'cmake.quickStart' failed. {"folder":{"uri":{"$mid":1,"fsPath":"/home/myusername/Build/Autodesk/maya/test-qopenglwindow","external":"file:///home/myusername/Build/Autodesk/maya/test-qopenglwindow","path":"/home/myusername/Build/Autodesk/maya/test-qopenglwindow","scheme":"file"},"name":"test-qopenglwindow","index":0}}

@keithel, thank you for creating this report. I just played with the command while having "cmake.sourceDirectory" set at the user level and there are plenty of scenarios to cover (single/multi root, run command from empty or existing folder, run from palette or via the "Create/Locate/Ignore" bottom right popup, ... etc ...). I reproduce various issues.
Just to make sure we don't overlook your exact scenario, describe please the structure of your project.
Also, does it still happen after you reload the project that was just created with the quick start command? I understand why the error happens at the beginning but it shouldn't after you define "cmake.sourceDirectory" at the project level and you reload.
Having a setting like "cmake.sourceDirectory" defined at the user level is not a scenario we thought about. Why do you need that?

This was with a brand new, simple project with just a single source file (I was testing something). Ultimately it will include Qt, but for these tests, it didn't - think of it as just a simple Hello World application that only depends on the standard C++ runtime libs.
I was able to make it work after resetting the User level cmake.sourceDirectory setting to ${workspaceFolder}. After I did that, I could create the project with the CMake: Quick Start command. Once project has been created, I could reset cmake.sourceDirectory in User settings back to what it was, and this new project still will load and build properly with CMake tools.
This occurs no matter if I just have VSCode open a new folder to the root of this project without existing CMakeLists.txt project and try creating a basic CMakeLists.txt file with CMake: Quick Start or if I actually save a new VSCode workspace file in this directory before invoking CMake: Quick Start.
Again, if I go and make the User settings cmake.sourceDirectory point to ${workspaceFolder}, then creating a CMakeLists.txt file works fine. Once created, I can put it back to what it was previously.


Feature/1.1.1 unique attribs

unique attribute flow [postgres/rmq broadcast]

newman.pdf
surefire.pdf

closes #143 & #145


Uncaught APIError in utils.py line 6841

Aider version: 0.55.0
Python version: 3.12.2
Platform: macOS-14.3.1-arm64-arm-64bit
Python implementation: CPython
Virtual environment: No
OS: Darwin 23.3.0 (64bit)
Git version: git version 2.39.3 (Apple Git-146)
An uncaught exception occurred:
Traceback (most recent call last):
  File "openai.py", line 1033, in completion
    raise e
  File "openai.py", line 959, in completion
    stringified_response = response.model_dump()
                           ^^^^^^^^^^^^^^^^^^^
AttributeError: 'str' object has no attribute 'model_dump'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "main.py", line 1345, in completion
    raise e
  File "main.py", line 1318, in completion
    response = openai_chat_completions.completion(
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "openai.py", line 1041, in completion
    raise OpenAIError(status_code=500, message=traceback.format_exc())
litellm.llms.openai.OpenAIError: Traceback (most recent call last):
  File "openai.py", line 1033, in completion
    raise e
  File "openai.py", line 959, in completion
    stringified_response = response.model_dump()
                           ^^^^^^^^^^^^^^^^^^^
AttributeError: 'str' object has no attribute 'model_dump'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "aider", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "main.py", line 694, in main
    coder.run()
  File "base_coder.py", line 730, in run
    self.run_one(user_message, preproc)
  File "base_coder.py", line 773, in run_one
    list(self.send_message(message))
  File "base_coder.py", line 1183, in send_message
    saved_message = self.auto_commit(edited)
                    ^^^^^^^^^^^^^^^^^^^^^^^^
  File "base_coder.py", line 1863, in auto_commit
    res = self.repo.commit(fnames=edited, context=context, aider_edits=True)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "repo.py", line 101, in commit
    commit_message = self.get_commit_message(diffs, context)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "repo.py", line 186, in get_commit_message
    commit_message = simple_send_with_retries(
                     ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "sendchat.py", line 44, in wrapper
    return decorated_func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "_sync.py", line 105, in retry
    ret = target(*args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^
  File "sendchat.py", line 106, in simple_send_with_retries
    _hash, response = send_completion(**kwargs)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "sendchat.py", line 86, in send_completion
    res = litellm.completion(**kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "utils.py", line 1078, in wrapper
    raise e
  File "utils.py", line 966, in wrapper
    result = original_function(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "main.py", line 2766, in completion
    raise exception_type(
          ^^^^^^^^^^^^^^^
  File "utils.py", line 8438, in exception_type
    raise e
  File "utils.py", line 6841, in exception_type
    raise APIError(
litellm.exceptions.APIError: litellm.APIError: APIError: OpenAIException - Traceback (most recent call last):
  File "openai.py", line 1033, in completion
    raise e
  File "openai.py", line 959, in completion
    stringified_response = response.model_dump()
                           ^^^^^^^^^^^^^^^^^^^
AttributeError: 'str' object has no attribute 'model_dump'

Thanks for trying aider and filing this issue.
What model were you using when this happened?

Hi Paul,
I'm a non-developer who is slowly being able to write more and more code using LLM's (so forgive any inaccuracies in this description below). Thanks heaps for responding to this (so grateful for all the work you do on Aider!)
I'm using a custom setup with a private model that I call locally. The setup is quite convoluted and an edge case:

Aider sends requests to a fixed Ngrok URL to tunnel into my localhost.
The Aider API request is mapped to fit the request format required for my private model API and then sent off.
The response is then passed back through and streamed to Aider.

Essentially, it's like a "man-in-the-middle" API setup. The initial part of the process in Aider works perfectly (as if it was from a major provider's API), and all the code gets written as expected. However, when it reaches the stage of making the git commit, or something at the end of the Aider sequence of steps that is too advanced for me to understand, it gets caught in a loop of wanting to 'model_dump', which is missing from the response object.

I think the issue stems from my custom API setup not providing a response object with a `model_dump()` method as Aider expects. I wonder if a small change in Aider could make it more robust for non-standard API responses (eg. implementing a function that safely handles various response types could prevent this error for other custom setups as well.)
I'll also plan to implement a wrapper for my custom API response to try and resolve it on my end.
</AI generated>
Let me know if you need any additional information if you were going to make any adjustments to how Aider works.
Thanks again!

This does seem likely to be caused by your custom api setup. Unfortunately it would be very difficult for me to help debug it.
I'm going to close this issue for now, but feel free to add a comment here and I will re-open. Or feel free to file a new issue any time.


add 32 bit arm support

Companion PR for https://github.com/fstab/docker-grok_exporter-compiler/pull/2
Note that for some reason I could not get the tests to work, hence tests are commented out.  I lost the console output for what happened exactly, but I can try to reproduce this on a fresh pi in the next few days if it would be helpful.

Coverage remained the same at 69.878% when pulling c9bb8561dd8217086ad03a98d59d9d5e5a10eeea on geekdave:patch-1 into 118f9f6a6c60116eda808b7ebb105fdb6a73f7a8 on fstab:master.

grok_exporter on the raspberry, that sounds great. Thanks a lot. I will set up my raspberry and try it.

I finally found the time to set up a virtual raspberry pi with qemu for testing. Unfortunately, grok_exporter terminates with this error right after start:
Illegal instruction

My guess is this is because my emulation uses arm32v6 while the build produces arm32v7. There seems to be no straightforward way to build an ARMv6 version. There are Docker images for v6, but they are all based on Alpine linux, so grok_exporter ends up being linked against musl libc instead of glibc. This means the binaries will not run on Raspbian which uses glibc.
Need to look into this a bit more.

I found that resin/rpi-raspbian has ARM32v6 support. Used this as the base image. Now everything seems to work. Added grok_exporter-0.2.6.linux-arm32v6.zip to the current v0.2.6 release.

@fstab forgot to say thanks so much for this! It’s working perfectly on my pi. Related question: I’ve created a docker image of this for easier distribution and management. Before I publish my own bespoke image to docker hub I was wondering if you would consider an official docker image?

I'd be happy if you publish it.
Note that the resin/rpi-raspbian image is no longer maintained, so I switched to dockcross/linux-armv6 in the current version of fstab/docker-grok_exporter-compiler.


Feature to return Schema Promotion Details in API call.

Signed-off-by: Aindriu Lavelle<EMAIL_ADDRESS>About this change - What it does
Promotion Details are returned in the getSchemaOfTopic API call.
Add the UI component to Promote a topic to the next environment.
Allows forceRegister to be used on environments where schema compatibility would otherwise block the update.
Resolves: #xxxxx
Why this way
This follows the same pattern for topic promotion and allows the UI to be able to make decisions to promote the schema to the next ordered Schema Environment.

I think we can also update default  server config


Using visible() function with computer vision, loop and python block usage

I'm having problems when I try to use visible and python blocks in a loop
//this code block does not work
for (i=0;i<1024;i++)
{
  if visible('system/images/trending.png')
  {
	break;
  }

  py a = "Hello"
  py  print (a)
  echo py_result

}

//this code block is working properly
for (i=0;i<1024;i++)
{

  py a = "Hello"
  py  print (a)
  echo py_result

}

Thank you in advance for your support

Hi Murat,
I think the issue happens for an uncommon use case where visible() is used for computer vision automation but there are no other visual automation steps in the script.
TagUI checks for visual automation requirements in the steps to decide whether to launch SikuliX for computer vision. Something like the following may work for you. The click step lets TagUI invoke SikuliX engine to handle the computer vision capability in visible() function -
click system/images/trending.png

for (i=0;i<1024;i++)
{
  if visible('system/images/trending.png')
  {
	break;
  }

  py a = "Hello"
  py  print (a)
  echo py_result

}

thanks for your support kensoh
the method you're saying works


move pull request template so it should show up properly

With this all PRs would start as game submission PRs, though

(Should work as it's in the same position as typescripts, which I know shows up https://github.com/Microsoft/TypeScript/blob/master/.github/pull_request_template.md)


Action is renaming uploaded files, not preserving original name

I have two files in a folder to upload to the root of an existing container (no sync, no cleaning). I can't figure out looking at the code why this action is renaming my files. Here's the debug output (masking some names with $ because these are customer product downloads).
As you can see from the following logs, it's replacing my filenames with timestamps (YYYYMMDD) and appending als to one of them. I can't see in your code where you're using a datestamp, so I'm assuming that's coming from my filename... it's almost like it's having issues with the underscore in my filename... but why?
##[debug]..=> '/home/runner/work/course-$$$$/course-$$$$'
##[debug]=> '/home/runner/work/course-$$$$/course-$$$$/../azblobupload'
##[debug]Result: '/home/runner/work/course-$$$$/course-$$$$/../azblobupload'
##[debug]Loading env
Run<EMAIL_ADDRESS>  with:
    connection_string: ***
    container_name: downloads
    source_folder: /home/runner/work/course-$$$$/course-$$$$/../azblobupload
    clean_destination_folder: false
    fail_if_source_empty: false
  env:
    UTILITY_RELATIVE_PATH: utils/build-materials-download
    CURRENT_DATESTAMP: 20200913
##[debug]sourceFolder: /home/runner/work/course-$$$$/course-$$$$/../azblobupload
##[debug]--- cleaned: /home/runner/work/course-$$$$/course-$$$$/../azblobupload
##[debug]localFilePath: /home/runner/work/course-$$$$/azblobupload/$$$$-$$$1_20200913.zip
##[debug]--- cleaned: /home/runner/work/course-$$$$/azblobupload/$$$$-$$$1_20200913.zip
##[debug]finalPath: als_20200913.zip...
##[debug]sourceFolder: /home/runner/work/course-$$$$/course-$$$$/../azblobupload
##[debug]--- cleaned: /home/runner/work/course-$$$$/course-$$$$/../azblobupload
##[debug]localFilePath: /home/runner/work/course-$$$$/azblobupload/$$$$-$$$2_20200913.zip
##[debug]--- cleaned: /home/runner/work/course-$$$$/azblobupload/$$$$-$$$2_20200913.zip
##[debug]finalPath: 20200913.zip...
Uploaded /home/runner/work/course-$$$$/azblobupload/$$$$-$$$1_20200913.zip to downloads/als_20200913.zip...
Uploaded /home/runner/work/course-$$$$/azblobupload/$$$$-$$$2_20200913.zip to downloads/20200913.zip...
##[debug]Node Action run completed with exit code 0
##[debug]Finishing: Upload ZIPs to Azure Storage Blob

Thank you for sharing. This is indeed weird as there is nothing that explicitly changes the name of the file, the only path modifications are stripping off the source root and prefixing any destination root.
I'll take a look at this today, what runner are you using?

Latest Ubuntu

If you need to be up and running now, try the Docker-based Azure Blob upload action from Matthew Fisher https://github.com/marketplace/actions/azure-blob-storage-upload. The parameters are every similar to mine because the Azure SDK is the same for everyone.
In the meantime, I'll continue to test this.
Regarding the timestamp filename, that value seems to be coming from the environment variable  CURRENT_DATESTAMP in the workflow. I don't use that variable in the Action, so I have no idea how that could possible become the filename.
However, I do have an ideas about where the 'als' part is coming from. Do you have a previous folder name that ends in als? For example, here's something I think make sense in the context
azblobupload/finals/filename.zip
The ../ in the source path is breaking the file path creation here https://github.com/LanceMcCarthy/Action-AzureBlobUpload/blob/8ce3f6e52c72185c3a1b70098193ab97384d6188/src/main.ts#L61-L106

I'm uploading the files as artifacts so my short term solution is to manually download & upload the files. Not ideal, but the workflow is only manually run so not a big issue.
The timestamp is part of the filename I'm passing into the action. The als may be coming from the word "fundamentals" which is one of the two things I'm masking in the OP of this issue... but there's another word used that didn't generate that... which is strange.
The reason for the ".."in the filename is because of the variable ${{ github.workspace }} points to the cloned repo in the workspace. The location where the ZIP files are that I want to upload is parallel to that folder. If there was a way to get the value of the folder path for the root of the repo (and not the identical folder name one level down), I could use that... but can't figure how to get around that.

The workspace is typically one level down from where the commands are run.  So you should be able to just use:
source_folder: ..\azblobupload
Let me know how that goes.

Also, I have This Prebuilt TypeScript Playground script that mimics the Action's work.
I use to test certain files paths to see what the outcome would look like without having to make a commit to GitHub, run the Action and wait for every tiny change
Put your string paths in these called out variables, run it and check out Logs pane

I'm also running into this issue. I suspect leading and trailing slashes in sourceFolder and localFilePath has an effect on the resulting trimmedPath. I tested in the TypeScript Playground (very useful!) and will submit a PR for review.

Thank you, I will review it today and push out a new release.

I have validated, built, test and released v1.8.3 to GitHub Actions Marketplace

@jacwil Thank you for opening the PR,
@andrewconnell Can you please let me know if you're seeing any problems after updating the workflow to use v1.8.3

If you'd like to see the specifics:

Here is the GH Action build results (it also contains Test results) https://github.com/LanceMcCarthy/Action-AzureBlobUpload/actions/workflows/main_release.yml
Here's the release page  https://github.com/LanceMcCarthy/Action-AzureBlobUpload/releases/tag/v1.8.3

@LanceMcCarthy I chose to implement the upload using a different method back then. Bit swamped and the workflow works now so no offense if I don't get a chance to go back and test it out ¯_(ツ)_/¯

@andrewconnell no offense taken! If you start a new project and need this again, I'm happy to help.


update phpunit config

Noticed the phpunit configuration config does not pass validation:
https://github.com/psalm/psalm-plugin-laravel/actions/runs/6826034186/job/18565079257

@Nielsvanpach
great! Will it work with lower versions of PHPUnit? E.g. 10.0

The ci action where I noticed this warning, ran on PHP 8.0 and phpunit 9.6.13. I don't expect any issues with phpunit 10

cool, thanks!


Deleting a row from table

I have insert and update working reactively. When I remove an item from a collections, it is not updating the table reactively. I currently have location.reload to reload the page to make it work. Any suggestions?
Thanks

Same here

Hi suneillg and palra,
Have a look at http://greatalbums.meteor.com/albums for a working demonstration of a Collection with  reactively CRUD using aldeed:tabular, aldeed:autoform
The source is on github, https://github.com/AnnotatedJS/GreatAlbums
You can signin with email<EMAIL_ADDRESS>and password "password".
René
AnnotatedJS

This should work properly in 1.3.0

Hi all,
@aldeed thanks for this awesome piece of work!
Unfortunately, row deletion is not working for me with version 1.4.2 and using Meteor.call() to delete documents on the server using methods.
Fixed with
var table = $('#myTable').DataTable();
table.page.len(table.page.len()).draw();

in the Meteor.call() callback function.


Add an authorizerName parameter

in the RequiresAuthenticationFilter to select a custom authorizer without using a dependency injection framework

PR: https://github.com/pac4j/j2e-pac4j/pull/18

Updated the demo accordingly: https://github.com/pac4j/j2e-pac4j-demo/pull/16


Compiler crashed when using "@" in figure's caption then make a figure outline

I got this error when trying to use the "@" in figure's caption
[12:38:59] compiled with errors

thread 'main' panicked at 'index out of bounds: the len is 3 but the index is 65535', C:\Users\runneradmin\.cargo\registry\src\index.crates.io-6f17d22bba15001f\elsa-1.8.0\src\vec.rs:231:13
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

The code
#figure(
    image("asset\minimax_tree.png", width: 80%),
    caption: [Minimax tree @Minimax]
)

I have tried to use "#cite", but it said
[12:42:00] compiled with errors

error: bibliography does not contain this key
    ┌─ Seminar_Report.typ:864:28
    │
    │     caption: [Minimax tree #cite("Minimax")]
    │

The code #cite("Minimax") still work out side of the caption
I'm using the 23/04/11 release

I can't seem to be able to reproduce; can you share a minimal working example? Thanks.

This happend when I try to make an outline outline
#outline(target: figure.where(kind: image))

#figure(
    image("HCMUS_Logo.png"),
    caption: [HCMUS Logo @Minimax],
)
#bibliography("ReportBib.yml")

Sorry for my mistake

Minimal repro:
File doc.typ
#outline()
= Heading @name
#bibliography("bib.bib")

File bib.bib
@misc{name,}

Now, run typst doc.typ
Expected output: nothing, compiles properly into doc.pdf
Actual output:
thread 'main' panicked at 'index out of bounds: the len is 1 but the index is 65535', /home/leo/.cargo/registry/src/github.com-1ecc6299db9ec823/elsa-1.8.0/src/vec.rs:231:13
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Upon doing some debugging, it seems that it is erroring due to an invalid span attached to an error produced by CiteElem::show:
https://github.com/typst/typst/blob/1e948f7fa29395cfc2bd704bfdbe6019229ba500/library/src/meta/bibliography.rs#L351-L352

Alright, found the culprit:
https://github.com/typst/typst/blob/1e948f7fa29395cfc2bd704bfdbe6019229ba500/library/src/meta/reference.rs#L162
The span isn't being properly set here

So, fixing that will prevent the compiler from crashing, but the unexpected error will still happen - it seems to be related to the inner workings of query and location. Still, the error is definitely better than the (unhelpful) compiler error.

Are there any workarounds know for this issue?

Closing in favor #785, which has the same underlying problem.


Commit "Update T5 attention mask handling in FLUX" results in an increase of tens of GB of video memory usage when using --apply_t5_attn_mask

Commit "Update T5 attention mask handling in FLUX" results in an increase of tens of GB of video memory usage when using --apply_t5_attn_mask.

Applying T5 mask seems to increase memory usage by about 1GB, but 10GB is too much. Please let me know the versions of PyTorch and CUDA. Upgrading PyTorch to 2.4.0 and CUDA to 12.4 may solve the problem.

After updating to torch 2.4.0+cu121, I encountered ImportError: cannot import name 'log' from 'torch.distributed.elastic.agent.server.api' (/root/miniconda3/envs/3.10/lib/python3.10/site-packages/torch/distributed/elastic/agent/server/api.py).
I am curious why --apply_t5_attn_mask did not take up tens of GB of additional video memory before commit "Update T5 attention mask handling in FLUX" (hash:7e459c00b2e142e40a9452341934c2eb9f70a172)?

Is this why I just updated from a week or two ago and now a 1024, 1024 training is instantly OOM?  Nothing else changed.

I did not, and gave up as it went a little further, but as soon as step 1 was to start OOM.

For some reason, FlashAttention for PyTorch's scale_dot_product_attention may be disabled when masking. This may depend on the CUDA version, GPU or mixed precision dtype etc.
If you turn off apply_t5_attn_mask, you should get similar training results as before.

@kohya-ss I updated torch to 2.4.0 and deepspeed to the latest version. Now using --apply_t5_attn_mask does not seem to cause video memory overflow, but the training time is doubled compared to not using this option. Similarly, this problem did not exist before this commit. Why is this?

When --apply_t5_attn_mask is specified, we fixed the implementation to correctly mask attention from zero padding in embeddings. Attention masking seems to be quite slow in PyTorch's SDPA in some cases.

Thank you for your explanation, it seems I will have to give up using this option for the time being.


[FancyZone] Dynamic layout mode that can be edited on the fly

It would be great to be able to modify the fancy zone layout on the fly (without opening the editor view), just like the standard windows split view.
I'd imagine this could be an additional mode available in the custom tab, or have its own tab altogether.
It would work the same way as the windows split view, meaning as you resize a window that covers a fancy zone, it would also resize the zone itself. If empty space is created, it could be filled with a new empty zone, but there's a lot of edge cases to cover there probably, so it's probably best to just offer a quick way to fill in empty space instead. Which could be done in the edit mode, by just clicking into an empty space, which would create a zone with the size of the empty space.

I use https://github.com/miromannino/miro-windows-manager on my mac, and I am looking for something that replicates that behavious on windows. I think it would also largely do what you are looking for. @rihok

related to https://github.com/microsoft/PowerToys/issues/254

wouldn't this maybe be magnetic edges ala #1535?

Tracked in https://github.com/microsoft/PowerToys/issues/6611


[Rendering/Architectures]: Add Slide to discuss 'CRA' alternatives

[ ] create a few slides on different React architectures
[ ] give advice how a client's project (depending on its requirements) can benefit from a different rendering strategy than purely client-side rendering

My impression from the last iteration was, that the way we handle it is atm quite allright. We currently mention next/remix as alternative & will switch to Vite in the next course iteration. And the other rendering strategies in the end chapter are fine imho


METRON-1277 Add match statement to Stellar language

as discussed on the dev list:  Stellar support for switch/case style conditionals
This PR adds 'match' capability to the stellar language.  This is very similar to the Scala match feature.
FROM THE README:
Stellar Language Match Expression
Stellar provides the capability to write match expressions, which are similar to switch statements commonly found in c like languages, but more like
Scala's match.
The syntax is:

match{ logical_expression1 => evaluation expression1, logical_expression2 => evaluation_expression2, default => default_expression}

Where:

logical_expression is a Stellar expression that evaluates to true or false.  For instance var > 0 or var > 0 AND var2 == 'foo' or IF ... THEN ... ELSE
evaluation_expression is any Stellar Expression
default is a required default return value, should no logical expression match

default is required

Lambda expressions are supported, but they must be no argument lambdas such as () -> STATEMENT

Only the first clause that evaluates to true will be executed.

Review items

more test cases
help with issue with MAP() function
correctness of short circuit / grammar

This PR does not

add the aliasing of long variables
support variable arg lambda

Testing
from the Stellar shell execute various statements involving match such as:
ttofowler@Winterfell [13:01:16] [~/src/apache/forks/metron/metron-stellar/stellar-common] [stellar_match]
-> % mvn exec:java \
   -Dexec.mainClass="org.apache.metron.stellar.common.shell.StellarShell" -Dexec.args="-l src/test/resources/log4j.properties"
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building stellar-common 0.4.1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- exec-maven-plugin:1.6.0:java (default-cli) @ stellar-common ---
Stellar, Go!
Please note that functions are loading lazily in the background and will be unavailable until loaded fully.
[Stellar]>>> Functions loaded, you may refer to functions now...
[Stellar]>>> foo := 1
[Stellar]>>> match{foo == 1 : TO_UPPER('ok')}
OK
[Stellar]>>>

For all changes:

[x] Is there a JIRA ticket associated with this PR? If not one needs to be created at Metron Jira.
[x] Does your PR title start with METRON-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.
[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

For code changes:

[ ] Have you included steps to reproduce the behavior or problem that is being changed or addressed?

[x] Have you included steps or a guide to how the change may be verified and tested manually?

[x] Have you ensured that the full suite of tests and checks have been executed in the root metron folder via:
mvn -q clean integration-test install && build_utils/verify_licenses.sh

[x] Have you written or updated unit tests and or integration tests to verify your changes?

[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?

[ ] Have you verified the basic functionality of the build by building and running locally with Vagrant full-dev environment or the equivalent?

For documentation related changes:

[x] Have you ensured that format looks appropriate for the output in which it is rendered by building and verifying the site-book? If not then run the following commands and the verify changes via site-book/target/site/index.html:
cd site-book
mvn site

Also, I don't think there is an issue with the map function directly. It's actually an issue with the logical_expression var1 and using/not using a default branch. It seems like the stack isn't properly being managed. For example things are being pushed (eg. when a logical_expr is just var1) when they shouldn't and popped  when they shouldn't be (eg. when there is no default?). I haven't pin pointed it directly yet, but I hope this helps somewhat. Below are a few example tests that I have created.
// Here there is a null on the stack
@Test
@SuppressWarnings("unchecked")
public void test1FailsWithMoreOnStack() {
    Assert.assertEquals("a",  run("match{ foo : 'a' }",
            new HashMap() {{
                put("foo", true);
            }}));
}

// Here it's an empty stack when we expect 'a' i believe.
@Test
@SuppressWarnings("unchecked")
public void test1FailsEmptyStack() {
    Assert.assertEquals("a",  run("match{ foo == true : 'a' }",
            new HashMap() {{
                put("foo", true);
            }}));
}

// This is *not* properly handled
@Test
@SuppressWarnings("unchecked")
public void test1Passes() {
    Assert.assertEquals("a",  run("match{ foo : 'a', default: 'b' }",
            new HashMap() {{
                put("foo", true);
            }}));
}

// This is properly handled
@Test
@SuppressWarnings("unchecked")
public void test1Passes() {
    Assert.assertEquals("a",  run("match{ foo == true : 'a', default: 'b' }",
            new HashMap() {{
                put("foo", true);
            }}));
}

// Example where map works
@Test
@SuppressWarnings("unchecked")
public void workingMatchWithMap() {
   Assert.assertEquals(Arrays.asList("OK", "HAHA"),  run("match{ foo > 100 : THROW('oops'), foo > 200 : THROW('oh no'), foo >= 50 : MAP(['ok', 'haha'], (a) -> TO_UPPER(a)), default: 'a' }",
          new HashMap() {{
            put("foo", 50);
          }}));
}

Thanks, I added those tests to the test class, and these fail:
@Test
  @SuppressWarnings("unchecked")
  public void testVariableOnlyNoDefault() {
    Assert.assertEquals("a",  run("match{ foo : 'a' }",
        new HashMap() {{
          put("foo", true);
        }}));
  }

  @Test
  @SuppressWarnings("unchecked")
  public void testVariableEqualsCheckNoDefault() {
    Assert.assertEquals("a",  run("match{ foo == true : 'a' }",
        new HashMap() {{
          put("foo", true);
        }}));
  }

  @Test
  @SuppressWarnings("unchecked")
  public void testVariableOnlyCheckWithDefault() {
    Assert.assertEquals("a",  run("match{ foo : 'a', default: 'b' }",
        new HashMap() {{
          put("foo", true);
        }}));
  }

I will take a look.  I feel that I have similar tests to these that are working, so it is strange.

@jjmeyer0 thanks for the tests.  The issue is that we call validate and then parse.  When we call validate, we resolve all vars to NULL.  This means that the clauses in these failures are false.  As stated in the readme, something in the match must be true or you get an error.  In this case, we have an issue where validate is forcing us into that condition and we don't have a default, so it is an error.
I'll keep looking.
If you have any thoughts, or maybe @cestella  does, I'm all ears.

So for example:
 /*
          curr is the current value on the stack.  This is the non-deferred actual evaluation for this expression
          and with the current context.
           */
          Token<?> curr = instanceDeque.peek();
          if (curr != null && curr.getValue() != null && curr.getValue() instanceof Boolean
              && ShortCircuitOp.class.isAssignableFrom(token.getUnderlyingType())) {
            //if we have a boolean as the current value and the next non-contextual token is a short circuit op
            //then we need to short circuit possibly
            if (token.getUnderlyingType() == BooleanArg.class) {

with this function:
 @Test
  @SuppressWarnings("unchecked")
  public void testVariableOnlyCheckWithDefault() {
    Assert.assertEquals("a",  run("match{ foo : 'a', default : 'b' }",
        new HashMap() {{
          put("foo", true);
        }}));
  }

When we get to that point, because of the validation of vars to null curr IS null.  So even though token IS a short circuit token, we do not process it as we should.

Because it is possible in validate() for a boolean to be null instead of true or false.

@jjmeyer0 @cestella : Ok.
So, I added some code, where it is possible context wise to guard against the case where there is a single variable as the check, and no default.  This resolves the test issues, save for one, where there is no default and we are using == true.  This is more difficult.
I feel as if all of these things are wrong, because the validation by executing with null variables is itself logically wrong.  We have discussed this before, but this is really evident here.  At least I feel it is.
I think that we should use compilation instead of validation.  We can decide to make it a separate option when running tests, or to make it the way we do all tests etc.  But if compilation does what I think it does, then I think it is more correct.
I would like to do that, and remove the work around I have introduced here ( basically detecting that we are validating and have a single var that is null because of validation ) since changing validation would be the real complete answer.

for example:
 @Test
  public void testValidation() {
    Object value = run("IF x == null THEN THROW('it cannot be null') ELSE 'it is ok'", new HashMap(){{
      put("x","something");
    }} );
  }

This is a valid test, but it fails on validation not parse.

OK, the validation issues are a big big deal.  I have changed the match functionality so that they work in that context, supporting guard expressions and requiring the default operation.

Require default statement
change the action separator from : to => so that...
we can use conditional_exp and logical_exp ( can check for EXISTS() with IF etc )

I still have to do the hack for the match{ var1 => 'ok' , default => 'notOk' }
since the lone null as logical doesn't work as stated earlier.
So the new syntax is
match { logical_or_conditional_expr => transform_exp , default => transform_exp }

the issue with MAP() is resolved as well

@ottobackwards something is still going on with this. I'm seeing the following behavior:
[Stellar]>>> foo := 500
[Stellar]>>> match{ foo > 100 => ['oops'], foo > 200 => ['oh no'], foo >= 500 => MAP(['ok', 'haha'], (a) -> TO_UPPER(a)), default => ['a']}
[!] Invalid parse, found [OK, HAHA]
org.apache.metron.stellar.dsl.ParseException: Invalid parse, found [OK, HAHA]
        at org.apache.metron.stellar.common.StellarCompiler$Expression.apply(StellarCompiler.java:210)
        at org.apache.metron.stellar.common.BaseStellarProcessor.parse(BaseStellarProcessor.java:152)
        at org.apache.metron.stellar.common.shell.StellarExecutor.execute(StellarExecutor.java:292)
        at org.apache.metron.stellar.common.shell.StellarShell.handleStellar(StellarShell.java:282)
        at org.apache.metron.stellar.common.shell.StellarShell.execute(StellarShell.java:514)
        at org.jboss.aesh.console.AeshProcess.run(AeshProcess.java:53)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
[Stellar]>>>

@jjmeyer0 I have fixed the issue.  I had lost short circuit to the end of all clauses, fixing that fixes the case.  I added tests for your issues.
I think I'm going to refactor the tests, but you should be able to check where it is in the mean time.
Thanks for the report!

That fix also fixes the issue where IF THEN ELSE in the action clause was not working

Bump?

Great catch!  Moved it out.

@ottobackwards this looks good to me now. I re-built everything, ran the tests, and played around in stellar shell. The only question I'm still not sure about is the one that deals with backwards compatibility. I believe with the new keywords (default, match) we can potentially break expressions with this change. @ottobackwards and @cestella do you have an opinion on this?

Great!  I am not sure on that.  @cestella what do you think?

Maybe we need a tool that tests stellar scripts or configurations that the user can run and report?
And we can maintain that per release?

Ok, I'll update the upgrading doc.

Ok, please have a look at the doc. I'll not that we have not added any notes previously for this type of thing.
Also: METRON-1339: Stellar shellShould have a way to validate deployed functions has been created.
You are welcome to comment.
I may have a PR for that soon

once travis build completes successfully this looks good +1.

@cestella any last words before I pull the trigger on this?  Any comment?

Yeah, let me run this up once more in the REPL and take a final look at the docs, but I've been monitoring and I like what I see so far.

PR: https://github.com/apache/metron/pull/856  adds capability to use the stellar shell to validate stellar statements at rest out of ZK

Alright, +1 otto, you did great work here.  I'm very, very impressed.  Thanks to @jjmeyer0 for the careful review and assistance.  Open source dev at its finest.

actually, hold on there, If ound one more bug:
[Stellar]>>> match { is_alert == null => null, is_alert => 'alert', default => 'nah' }
[!] null
java.lang.NullPointerException
	at org.apache.metron.stellar.common.StellarCompiler.lambda$exitMatchClauseAction$19(StellarCompiler.java:752)
	at org.apache.metron.stellar.common.StellarCompiler$Expression.apply(StellarCompiler.java:190)
	at org.apache.metron.stellar.common.BaseStellarProcessor.parse(BaseStellarProcessor.java:152)
	at org.apache.metron.stellar.common.shell.StellarExecutor.execute(StellarExecutor.java:292)
	at org.apache.metron.stellar.common.shell.StellarShell.handleStellar(StellarShell.java:282)
	at org.apache.metron.stellar.common.shell.StellarShell.execute(StellarShell.java:514)
	at org.jboss.aesh.console.AeshProcess.run(AeshProcess.java:53)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)

Ok,  what was is_alert in this test?

sorry, it's not set, so it's null.

Ok, I'll check it out after i do my full dev test on validate

@cestella  new test and fix is in

Ok, my +1 stands


Release 3.4.0

preparing for release 3.4.0

[ ] change old links form readme
[ ] update readme (add screenshots of the 16 color generation)
[x] properly document past changelog (dylan stopped at release 3.1.0):

[x] release 3.2.0 changelog
[x] release 3.2.1 changelog
[x] release 3.3.0 changelog

[x] copy pywal's wiki
[x] merge support for gnome dark mode wallpapers
update the wiki this can be done AFTER releasing
[x] release 3.4.0 changelog

maybe i should put the CI in github itself, then upload to pypi

changes from master rebased.


Customize instance status feedback colors

This is my first contribution. I would like to suggest this change that will allow the instance status feedback colors to be user-customizable.

You need to do an upgrade script so that feedbacks added before this have the options defined.
Use https://github.com/bitfocus/companion-module-bitfocus-companion/pull/25/files#diff-e727e4bdf3657fd1d798edcd6b099d6e092f8573cba266154583a746bba0f346R61 and https://github.com/bitfocus/companion-module-bitfocus-companion/pull/25/files#diff-e727e4bdf3657fd1d798edcd6b099d6e092f8573cba266154583a746bba0f346R125 as a reference

You need to do an upgrade script so that feedbacks added before this have the options defined.
Use https://github.com/bitfocus/companion-module-bitfocus-companion/pull/25/files#diff-e727e4bdf3657fd1d798edcd6b099d6e092f8573cba266154583a746bba0f346R61 and https://github.com/bitfocus/companion-module-bitfocus-companion/pull/25/files#diff-e727e4bdf3657fd1d798edcd6b099d6e092f8573cba266154583a746bba0f346R125 as a reference


Documentation for serverless stack toolkit

README.md for SST endpoints
Github Issue Number Here: #1097
What user problem are we solving?
Creating brief README.md for SST code (~/serverless directory) in DLP
What solution does this PR provide?
Brief README.md for installation + dev testing instructions
Testing Methodology

How did you test your changes and verify that existing functionality is not broken
Checked the README.md contents to see if contents rendered appropriately
Any other considerations
N/A. Communicate with rest of DLP team in discord

LGTM
Thanks. merged in!


Display exercise solving velocity

Moved from https://github.com/mumuki/mumuki-atheneum/issues/491
@asanzo said:

If we could measure how long did it take to solve an exercise (or at least how much did it take between two sumbissions) that could give us interesting usage data.
Actually, I thought this as a consequence of having certain doubts about if the pupils really read the purely theoretical exercises (with no coding needed).
Just an idea, not important.

@faloi this can be easily accomplish by displaying the difference between first and last solution. However, do you think it is helpful? Is it something we want to actually show?

I can't decide whether is useful or not, but seems a bit difficult to implement: imagine the student leaves the computer after the first submission and returns a week later, what shall we display? A week? The sum of time between submissions of the same day?
To much to think for a feature I'm not sure we need. :stuck_out_tongue:

Ok, can we close it then @faloi ?

Go ahead.
El mar., 6 de sept. de 2016 20:20, Franco Leonardo Bulgarelli <
<EMAIL_ADDRESS>escribió:

Ok, can we close it then @faloi https://github.com/faloi ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mumuki/mumuki-teacher-tools/issues/154#issuecomment-245126355,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABgyq3iridAVUnB-z7b3DsUOBHEa7O5Oks5qnfUsgaJpZM4J2X3Z
.


Added CDS-93298

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://66054da29ee8ad0ba88988d7--harness-developer.netlify.app


add openssl to cross image

going to try going with #745 instead in case openssl isn't on the client machine


[nemo-qml-plugin-systemsettings] Remove 2019 deprecated DiskUsage. JB#61691

Was replaced by instance in Nemo.Filemanager and the one here has been printing warning on instantiation. About time to remove and get rid of qml dependency on the c++ library.
This was also the only thing we had tests here. Thus the tests subpackage is now removed too.

Having one more commit for skipping qml dependency on the library side, but maybe could get the vpn settings PR in first as that's also using some qml things.


Create Docs

I created the docs. These docs should be able to run on ReadTheDocs.
TODO:

[ ] add more docstrings

Made with sphinx.ext.autodoc.
All docstrings must use ReStructuredText format.

Lets merge this before adding docstrings.


Intune for Education

Proposed name of the new command
intuneedu
Description
Intune for Education
Category
Intune
Url
https://intuneeducation.portal.azure.com/

Added as inedu.cmd.ms


Bugfix. Undefined index: ELEMENT, from Codeception

https://github.com/facebook/php-webdriver/issues/469

Hi @vommuan, thanks fort he effort. However we do have this already implemented as part of #560 - with many other parts of W3C protocol support.


[QUESTION] What happens to current download when switching interfaces

Hello,
Say you are downloading a 1GB file on your cellular connection and then your device (iOS/Android) automatically joins a WiFi connection, what happens to the download?
Does it.

Continue downloading on the Cellular connection

Your devices maintains both interfaces

Switch to the WiFi connection

I assume this is not the case because you would have different IP addresses

Stop the download

You lose the data interface when connecting to wifi

People seem to suggest that 1,2 & 3 happen, though this cannot be the case. Does anyone know what specifically RNFB does when this scenario happens?
Thanks

I Just tested this scenario and it seems that the operation times out


Use Tiny Slider 2

Owl Carousel 2 works but is no longer maintained, https://github.com/ganlanyuan/tiny-slider is the replacement.

Tiny Slider 2 is the recommended replacement for Owl Carousel 2, but http://kenwheeler.github.io/slick/ might be easier to use and is far more supported.


Cannot lock file status, Another server instance in the same directory is already running

During the containerization of workers, the hostpath mode is used to mount the cache directory. When the pods of multiple workers are started on the same node, the message "cannot lock file status, Another server instance in the same directory is already running" is displayed. I would like to ask how I should mount the cache directory of the worker.

Hi @liby888 , thank you for reporting bug. May I ask if you are deploying using k8s?

During the containerization of workers, the hostpath mode is used to mount the cache directory. When the pods of multiple workers are started on the same node, the message "cannot lock file status, Another server instance in the same directory is already running" is displayed. I would like to ask how I should mount the cache directory of the worker.

when you config multiple workers in the same node, you need to config different local path for different workers such as read-worker1, read-worker2, write-worker1 and more

@liby888 Is it working now?

This is OK, but for now, we're trying to set anti-affinity so that only one writer-worker and default-worker are enabled for each node. If you have best practices, you can synchronize them to us.

@利比888现在起作用了吗？

This is OK, but for now, we're trying to set anti-affinity so that only one writer-worker and default-worker are enabled for each node. If you have best practices, you can synchronize them to us.

@利比888现在起作用了吗？

in k8s, if so, you can use label to set anti-affinity.

hi @liby888 any more question for this issue?

嗨@利比888这个问题还有什么问题吗？

没问题了，感谢

hello你好👋请问在关注ByConity社区吗，感兴趣的话可以加我们的交流群沟通下


fix: PDK Vault doc showing incorrect entities

With the addition of the @local ?decorator? some things in the PDK docs may not be correct.

Adding notes from discussion w/ @Guaris that this PR is ready to merge from his perspective. Once we've got final review from @bungle, we can merge.


fix: Workflow usability fixes

Description
Provide a concise summary of the changes made in this pull request

Updates to the Overview page
Created Lessons for the Tutorial - Create Basic Workflow
-  Lesson 1 - Create Basic Workflow
- Lesson 2 - Connect Workflow with Appsmith App
- Lesson 3 - Configure Webhook Trigger
- Lesson 4 - Connect Workflow with External System

Added a new reference
- Pass Parameters to Workflows

Pull request type
Check the appropriate box:

[ ] Review Fixes
[ ] Documentation Overhaul
[ ] Feature/Story

Link one or more Engineering Tickets
*

[ ] A-Force
[ ] Error in documentation
[x] Maintenance

Documentation tickets
Link to one or more documentation tickets:

#2305

Checklist
From the below options, select the ones that are applicable:

[x] Checked for Grammarly suggestions.
[x] Adhered to the writing checklist.
[x] Adhered to the media checklist.
[ ] Verified and updated cross-references or added redirect rules.
[ ] Tested the redirect rules on deploy preview.
[ ] Validated the modifications made to the content on the deploy preview.
[ ] Validated the CSS modifications on different screen sizes.

Closing this as the second format was much accepted.


Update cylc version in rtw.lock file for recipe_test_workflow

Description
This PR is intended to update the cylc version of the recipe test workflow prototype to match the more recent version8.2.5

Closes #3593

Checklist
It is the responsibility of the author to make sure the pull request is ready to review. The icons indicate whether the item will be subject to the 🛠 Technical or 🧪 Scientific review.

[x] 🛠 This pull request has a descriptive title
[x] 🛠 Code is written according to the code quality guidelines

[x] 🛠 The list of authors is up to date
[x] 🛠 Any changed dependencies have been added or removed correctly
[x] 🛠 All checks below this pull request were successful

To help with the number of pull requests:

🙏 We kindly ask you to review two other open pull requests in this repository

hey guys, the failed GA tests (looks to be a transitory HTTPS error, most defo will go away once you rerun them) prompted me to have a look at your GA workflow, and if you don't mind me, I could suggest a few improvements: have a look at the GA workflow we use to create the env from a lock file: https://github.com/ESMValGroup/ESMValCore/blob/main/.github/workflows/install-from-condalock-file.yml - it' s better if you use a dedicated action that sets up miniconda, ideally with Miniforge (or just conda-forge, if you are restricted to a certain set of packages), rather than using a system conda in the OS container. Also, in the long run, it'd be good if you talked to the MetO sysadmins to set up an eg met-office conda channel that is aligned to conda-forge, so that installation is a lot more flexible 👍 If you want me to, I can help with improving the GA workflow you got 🍺

Thanks @valeriupredoi! I was hoping to have a conversation with you and others in the TLT about how best to integrate the GitHub workflow and the documentation we have in our RTW branch into ESMValTool proper, in preparation for getting our main feature branch for the RTW merged into main. I was thinking that the workshop might be a good place to do this? 🤔

hey guys, the failed GA tests (looks to be a transitory HTTPS error, most defo will go away once you rerun them) prompted me to have a look at your GA workflow, and if you don't mind me, I could suggest a few improvements: have a look at the GA workflow we use to create the env from a lock file: https://github.com/ESMValGroup/ESMValCore/blob/main/.github/workflows/install-from-condalock-file.yml - it' s better if you use a dedicated action that sets up miniconda, ideally with Miniforge (or just conda-forge, if you are restricted to a certain set of packages), rather than using a system conda in the OS container. Also, in the long run, it'd be good if you talked to the MetO sysadmins to set up an eg met-office conda channel that is aligned to conda-forge, so that installation is a lot more flexible 👍 If you want me to, I can help with improving the GA workflow you got 🍺

Thanks @valeriupredoi! I was hoping to have a conversation with you and others in the TLT about how best to integrate the GitHub workflow and the documentation we have in our RTW branch into ESMValTool proper, in preparation for getting our main feature branch for the RTW merged into main. I was thinking that the workshop might be a good place to do this? 🤔

Also, just to add, there was a required step that was missed before the lock file was committed, so we will resolve this shortly 👍


[Codegen][Common] Reorder layout analysis to preserve anchored to_layout

TL;DR: Re-ordered forward and backward layout + added support to propagate through arith.select S.T setting to_layout at certain locations in decomposition gets honored.
The motivation behind this PR was to solve the issue where despite us emitting to_layout op at certain locations, we ended up generating redundant to_simd earlier in the graph. This results us to not have control on where the layout conversion actually happens.
One example of this case is when we emit a to_layout conversion for FP8 Attention. We emit a to_layout right before the 2nd contract and right after the truncf to FP8. Since we do enforcement(backward propagation) first and then propagate (forward propagation), we ended up generating two layout conversions, one the original one we emitted, the second one determined by layout analysis and placed in the middle of a elemwise op that is part of the softmax.
This forces us to do shuffles/layout resolution in FP32 which hurts the performance. Additionally, this is also not where we(compiler writers) intended the layout conversion to happen.
To solve this issue, we re-ordered the layout analysis to do forward propagation first and then enforcement(backward propagation). This gives layout set by forward propagation precedence, which makes the to_layout emitting more intuitive and behave more as expected.
Additionally, we made modification to getAgreedLayout to handle elemwise propagation where some operands are not expected to have layout such as arith.select who's condition operand probably don't have layouts.

Tests that changed seems to changed for the better.
For example one of test:
%read = vector.transfer_read %src
%layout_conv_0 = to_layout %read to #layout_0
%add = arith.addf %layout_conv_0, %layout_conv_0
%layout_conv_1 = to_layout %add to #layout_1
vector.transfer_write %layout_conv_1, %dst

Used to generate something like:
%read = vector.transfer_read %src [#layout_0]
%layout_conv_0 = to_layout %read from #layout_0 to #layout_1
%add = arith.addf %layout_conv_0, %layout_conv_0 [#layout_1]
%layout_conv_1 = to_layout %add to #layout_1
vector.transfer_write %layout_conv_1, %dst

// Note that read seems to be prematurely converted to layout1 and add is happening in layout1
// while the original IR seem to intend add to be happening in layout0.

Which now generates:
%read = vector.transfer_read %src [#layout_0]
%add = arith.addf %read, %read [#layout_0]
%layout_conv_1 = to_layout %add from #layout_0  to #layout_1
vector.transfer_write %layout_conv_1, %dst [#layout1]

// Now add and read is in layout 0 and only gets converted to layout 1 after add,
// which seems more aligned with the  intend of the original IR.


Implement JS API, part 1: rewritable units (#38)

do you plan to add tests using https://rustwasm.github.io/docs/wasm-bindgen/wasm-bindgen-test/browsers.html as a part of this PR? It's hard to know whether API are covers everything we need without any kind of tests.

@sejoker Yes. This is just part one, which can't really be tested in the browser yet as there is no way to manually create rewritable units.
Just wanted to do that in parts, otherwise the PR would be huge. Tests will be added once I implement bindings for the rewriter itself.