text:
Switch locale doesn't work

Brief Description
Using the query parameters ?lang= doesn't work if the current locale of the user is in the "available language". If I have "Accept-Language" set to "IT" and I navigate a page with ?lang=en, the language is still "it".
The problem I guess is on line 20 of Antl/ContextBidings:
const language = this.request.language(availableLocales) || this.request.input('lang')
It should be the inverse, giving priority to the input (note: I didn't tested it):
const language = this.request.input('lang') || this.request.language(availableLocales)
And, by the way, there's no way to change the locale from a middleware. I tried both these but they don't work, the locale is still "it" in my controllers.
'use strict'

const Antl = use('Antl')

class Language {
  async handle ({ request, response, locale, params, session }, next) {
    // Otherwise, set current locale
    Antl.switchLocale('en')

    // Call next to advance the request
    await next()
  }
}

module.exports = Language

'use strict'

const Antl = use('Antl')

class Language {
  async handle ({ request, response, locale, params, session }, next) {

    // asynchronous
    await Antl.bootLoader()

    // Otherwise, set current locale
    Antl.switchLocale('en')

    // Call next to advance the request
    await next()
  }
}

module.exports = Language

The ways to achieve this are:

To change the "Accept-Language" header from the web browser, but it's an awful solution
Retrieve the lang parameter in a Controller (to extend), check if the language is in the available ones, if not set the fallback and then call Antl.switchLocale.

While finding a way to retrieve the current locale in my views (I figured out only antl._locale), because of this the found locale is wrong (taken from headers) and from View.extend we can't use variable such as request or params to replicate the code to find the correct locale.

PS: Middlewares don't work when a page is not found

Okay, so there are couple of things here.

When using Antl.switchLocale('en')  you are simply changing the locale of a global instance, which is not passed to your controllers or routes.
Yes the preference is given to the header over query string, which can be changed, but I am not sure what everyone would need in this case.

Now regarding your middleware, this is what you can do to manually override it.
class Language {
  async handle ({ request, response, locale, params, session, antl }, next) {
    antl.switchLocale('en')
    await next()
  }
}

module.exports = Language

Note: Each request can have a different language, so you should never switchLocale on a global instance and instead set it for antl passed as the request context.

Also if I use antl.switchLocale('en') in the middleware, when I retrieve the locale from destructured object, it is the Header-given one. Anyway I found a (dirty) solution and I'm good with it. About the middleware not working on 404s have you got any idea?

That is by design. There are 3 layers of middleware

Server
Global
Named

The Global and Named only works when there is a registered route and Server one works everytime.
The example of Server middleware are Static and Cors.

Understood, thank you!

authors: danilopolani thetutlage

repo: adonisjs/adonis-framework


text:
toJSON fix

Fix for https://github.com/adonisjs/adonis-lucid/issues/210
This feels kind of hacky. The central problem is that Lucid doesn't know how to instantiate a new model. It's done one way in QueryBuilder, another way in create(), and a third way in newUp()
Suggestions?

Coverage increased (+0.005%) to 96.759% when pulling 125efcf678aed38501f7f1f1d811e62fd19f1407 on benallfree:serialize-fix into 05caeb32575151ac3c7110768793e69a71f29301 on adonisjs:develop.

Done - please also review the refactoring in _instantiate() and the test I added. The test never failed in the first place so I'm not sure if it's testing what you wanted :)

Coverage decreased (-0.02%) to 95.862% when pulling 7a8075e23db252e2f48779ab70461aad8e9e73cf on benallfree:serialize-fix into dfc438cd66b5928c53e1e56e04a369acbf82c765 on adonisjs:develop.

Rest all looks good to me. Lemme know when to make that final change and we move it to develop

Done. FYI PivotModel uses _instantiate. But yes I'm not sure why it's separate from the constructor :)
Ready to merge.

Coverage decreased (-0.02%) to 96.305% when pulling 8757f4abbf9e1af5275263e0675fe0bda25cfe8e on benallfree:serialize-fix into be987ca421041baaea1a67efe9b97361cb096e8e on adonisjs:develop.

Thanks @benallfree.
Also you can please start using https://github.com/commitizen/cz-cli. It is something we use for generating consistent commit messages.

source: gharchive/pull-request

authors: benallfree coveralls thetutlage

repo: adonisjs/adonis-lucid

license: MIT

license_type: permissive

license_source: github-api


text:
diff computed property and helpers

any plans on adding diff (https://momentjs.com/docs/#/displaying/difference/)?

@EmilyBarbour would happily review a PR that adds this.

Thanks for landing the helper portion of this issue: https://github.com/stefanpenner/ember-moment/pull/241/files

If no one picks this up, will do in the next couple of weeks; just a bit busy now with work and have more of an immediate need for the helper.

@EmilyBarbour no rush :)  If I can carve out time between now and then I'll also jump in.

computed macros have been removed in v9 -- this can be handled via a plain ol' JS getter

source: gharchive/issue

authors: EmilyBarbour NullVoxPopuli jasonmit notacoat

repo: adopted-ember-addons/ember-moment


text:
ImageIcon on HotSpot builds after jdk-11.0.6+10

Browser:

I have a problem that exists in all release versions after jdk-11.0.6+10 HotSpot, the problem does not exist in the OpenJ9 releases.
NOTE: Only talking about 11 LTS builds have not tried anything above the 11 LTS
NOTE2: This is the Windows 64Bit and X86 versions I have tested.
java.util.List icons = new ArrayList<>();
ImageIcon icon = new ImageIcon(getClass().getResource("/images/sys_icon.gif"));
Image image = icon.getImage();
icons.add(image);
setIconImages(icons);
I have debugged the code to rule out that its not pathing. I did this by switching getResource to getResourceAsStream and printing out all the bytes of the image.
The problem is at creating a new  ImageIcon.
It throws
Exception in thread "main" java.lang.ExceptionInInitializerError
I tried merging the working version with a non working version by copying over the conf, lib.
I get this
Exception in thread "main" java.lang.NoSuchMethodError: notifyWindowStateChanged
at java.desktop/sun.awt.windows.WWindowPeer.initIDs(Native Method)
at java.desktop/sun.awt.windows.WWindowPeer.(Unknown Source)
at java.desktop/sun.awt.windows.WToolkit.createFrame(Unknown Source)
at java.desktop/java.awt.Frame.addNotify(Unknown Source)
at java.desktop/java.awt.Window.pack(Unknown Source)
at estDiscover.frmAbout.initComponents(frmAbout.java:65)
at estDiscover.frmAbout.(frmAbout.java:18)
at estDiscover.estDiscover.(estDiscover.java:98)
at estDiscover.main.main(main.java:136)
I know that is non standard just testing.
The next thing i did was copy over awt.dll, jawt.dll, jimage.dll and the program got passed the failed to create the imageicon problem.

Please create a main class (file with public static void main(String[] args) function) that reproduces your problem.

I found what I think are bugs/regression in HotSpot JVM vs the OpenJ9

System.setProperty("java.library.path",path); is ignored by all version of HotSpot 11 LTS
Runtime.getRuntime().load(lib); not taking absolute paths on all versions of HotSpot 11 LTS
Messing with sys_paths via reflection which what is being done is considered bad and not to work in the future still works and does not behave like OpenJ9 or version HotSpot jdk-11.0.6+10

package openjdk11_hotspot_bug;

import java.awt.Image;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Random;
import javax.swing.ImageIcon;

public class OpenJDK11_HotSpot_Bug extends javax.swing.JFrame {
  private static final Object mutex = new Object();
  public  static final String EXTRACT_PATH;
  private static boolean extract_path_created = false;
  public  static final String ARCH;
  public  static final String OS;

  static {
    ARCH = get_arch_type();
    OS = System.getProperty( "os.name" ).toLowerCase();
    EXTRACT_PATH = System.getProperty("java.io.tmpdir") + File.separator + "natives" + new Random().nextInt();
    Runtime.getRuntime().addShutdownHook(new Thread() {
      @Override
      public void run() {
        synchronized(mutex) {
          if(!extract_path_created) {
            return;
          }
          File path = new File(EXTRACT_PATH);
          if(path.exists()) {
            File[] files = path.listFiles();
            for(File file : files) {
              file.delete();
            }
            path.delete();
          }
        }
      }
    });
    if(OS.toLowerCase().startsWith("windows")) {
      String resource_path = "/natives/windows";
      if(ARCH.equals("32")) {
        extract_resource(String.format("%s/%s/%s",resource_path,ARCH,"ProjectDLL.dll"),EXTRACT_PATH);
        extract_resource(String.format("%s/%s/%s",resource_path,ARCH,"ProjectDLL.dll"),EXTRACT_PATH);
      } else if(ARCH.equals("64")) {
        extract_resource(String.format("%s/%s/%s",resource_path,ARCH,"ProjectDLL.dll"),EXTRACT_PATH);
      }
    } else if(OS.equals("linux")) {
    }
  };

  public static boolean extract_resource(String res, String dest) {
    File dir = new File(EXTRACT_PATH);
    synchronized(mutex) {
      if (!extract_path_created && !dir.exists()) {
        if(dir.mkdirs()) {
          extract_path_created = true;
        } else {
          return false;
        }
      }
    }

    try {
      String[] s = res.split("/");
      OutputStream out;
      System.out.println("res: " + res + "\ndes: " + dest + File.separator + s[s.length-1]);
      try (InputStream in = mutex.getClass().getResourceAsStream(res)) {
        out = new FileOutputStream(dest + File.separator + s[s.length-1]);
        byte[] buffer = new byte[4096];
        int bufferSize;
        while((bufferSize = in.read(buffer,0,buffer.length)) != -1) {
          out.write(buffer,0,bufferSize);
        }
        out.close();
      }
    } catch (IOException e) {
      return false;
    }
    return true;
  }

  public static void update_lib_path(String path) {
    System.setProperty("java.library.path",path);
  }

  public static void update_lib_path2(String path) {
    System.setProperty("java.library.path",path);
      try {
      Field fieldSysPath = ClassLoader.class.getDeclaredField("sys_paths");
      fieldSysPath.setAccessible(true);
      fieldSysPath.set(null,null);
    } catch (NoSuchFieldException | SecurityException | IllegalArgumentException | IllegalAccessException e) {
    }
  }

  public static void load_library(String library) {
    String ext = "";
    if(OS.toLowerCase().startsWith("windows")) {
      ext = ".dll";
    } else if(OS.toLowerCase().equals("linux")) {
      ext = ".so";
    }
    System.out.print(String.format("%s%s%s .. ", EXTRACT_PATH,library,ext));
    Runtime.getRuntime().loadLibrary(library);
    System.out.println("OK");
  }

  public static void load_library(String path,String library) {
    String ext = "";
    String lib = "";
    if(OS.toLowerCase().startsWith("windows")) {
      ext = ".dll";
    } else if(OS.toLowerCase().equals("linux")) {
      ext = ".so";
    }

    lib = String.format("%s%s%s%s", path,File.separator,library,ext);

    System.out.print(String.format("%s%s .. ", library,ext));
    Runtime.getRuntime().load(lib);
    System.out.println("OK");
  }

  public static String get_arch_type() {
    String os = System.getProperty("os.name").toLowerCase();
    String realArch = "";
    if(os.toLowerCase().startsWith("Windows")) {
      String arch = System.getenv("PROCESSOR_ARCHITECTURE");
      String wow64Arch = System.getenv("PROCESSOR_ARCHITEW6432");
      realArch = arch.endsWith("64") || wow64Arch != null && wow64Arch.endsWith("64") ? "64" : "32";
    } else {
      realArch = System.getProperty("os.arch").contains("64") ? "64" : "32";
      realArch = System.getProperty("os.arch").contains("arm") ? "arm" : realArch;
    }
    System.out.println("arch type: " + realArch);
    return realArch;
  }

  public OpenJDK11_HotSpot_Bug() {
    initComponents();

    //This works on OpenJ9 but not HotSpot
    update_lib_path(EXTRACT_PATH);

    load_library("ProjectDLL");
    load_library(EXTRACT_PATH,"ProjectDLL");

    //This will cause the new ImageIcon to break for everything after version jdk-11.0.6+10 of HotSpot but works on OpenJ9
    //update_lib_path2(EXTRACT_PATH);

    java.util.List<Image> icons = new ArrayList<>();
    ImageIcon icon = new ImageIcon(getClass().getResource("/images/sys_icon.gif"));
    Image image = icon.getImage();
    icons.add(image);
    setIconImage(image);

    icons = new ArrayList<>();
    icon = new ImageIcon(getClass().getResource("/images/button_image.gif"));
    image = icon.getImage();
    icons.add(image);
    jButton1.setIcon(icon);
  }

  @SuppressWarnings("unchecked")
  private void initComponents() {

    jButton1 = new javax.swing.JButton();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

    jButton1.setPreferredSize(new java.awt.Dimension(148, 35));

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(
      layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
      .addGap(0, 400, Short.MAX_VALUE)
      .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(layout.createSequentialGroup()
          .addGap(0, 0, Short.MAX_VALUE)
          .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
          .addGap(0, 0, Short.MAX_VALUE)))
    );
    layout.setVerticalGroup(
      layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
      .addGap(0, 300, Short.MAX_VALUE)
      .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(layout.createSequentialGroup()
          .addGap(0, 0, Short.MAX_VALUE)
          .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
          .addGap(0, 0, Short.MAX_VALUE)))
    );

    pack();
  }// </editor-fold>

  public static void main(String args[]) {
    try {
      for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
        if ("Nimbus".equals(info.getName())) {
          javax.swing.UIManager.setLookAndFeel(info.getClassName());
          break;
        }
      }
    } catch (ClassNotFoundException | InstantiationException | IllegalAccessException | javax.swing.UnsupportedLookAndFeelException ex) {
      java.util.logging.Logger.getLogger(OpenJDK11_HotSpot_Bug.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    }

    /* Create and display the form */
    java.awt.EventQueue.invokeLater(new Runnable() {
      @Override
      public void run() {
        new OpenJDK11_HotSpot_Bug().setVisible(true);
      }
    });
  }

  // Variables declaration - do not modify
  private javax.swing.JButton jButton1;
  // End of variables declaration
}

Here is the project zipped up with the needed files and the source code for the dlls
https://drive.google.com/file/d/1QJFw0Ng79JMWvVr0iiY1dj5-tCdvVgCL/view?usp=sharing

There's a lot going on in your sample and it does not help that you included code to handle platfrom differences while the problem should only happen on Windows. Please reduce your samples as far as possible and concentrate on one potential problem per sample.
That something works with OpenJ9 while it does not in OpenJDK is not necessarily a problem of the latter.

Your problem seems to be with the core libraries, so unlikely caused by us. If you can reproduce the problem with Oracle JDK, you can try your luck on https://bugreport.java.com/bugreport/, but do not mention OpenJ9.

From my understanding, one JVM should act like another JVM in respect of functionality, performance can be different but in most respects they should behave the same, otherwise what is the point of having a standard.
I reduced it further the only other way I could reduce it more is have the files pre-extracted in a sub directory and point the path there.
If that is what you need / want I can do that
package openjdk11_hotspot_bug;

import java.awt.Image;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Random;
import javax.swing.ImageIcon;

public class OpenJDK11_HotSpot_Bug extends javax.swing.JFrame {
  private static final Object mutex = new Object();
  public  static final String EXTRACT_PATH;

  static {
    //Generate a temp directory path
    EXTRACT_PATH = System.getProperty("java.io.tmpdir") + File.separator + "natives" + new Random().nextInt();

    //Windows 32
    //extract_resource(String.format("/natives/windows/32/ProjectDLL.dll"),EXTRACT_PATH);
    //Windows 64
    extract_resource(String.format("/natives/windows/64/ProjectDLL.dll"),EXTRACT_PATH);
  };

  public static boolean extract_resource(String res, String dest) {
    //Create The temp directory for our resources if it does not exist
    File dir = new File(EXTRACT_PATH);
    synchronized(mutex) {
      if (!dir.exists()) {
        if(!dir.mkdirs()) {
          return false;
        }
      }
    }

    //Write the file to the temp location
    try {
      String[] s = res.split("/");
      OutputStream out;
      try (InputStream in = mutex.getClass().getResourceAsStream(res)) {
        out = new FileOutputStream(dest + File.separator + s[s.length-1]);
        byte[] buffer = new byte[4096];
        int bufferSize;
        while((bufferSize = in.read(buffer,0,buffer.length)) != -1) {
          out.write(buffer,0,bufferSize);
        }
        out.close();
      }
    } catch (IOException e) {
      return false;
    }
    return true;
  }

  public static void update_lib_path(String path) {
    System.setProperty("java.library.path",path);
  }

  public static void update_lib_path2(String path) {
    System.setProperty("java.library.path",path);
    try {
      Field fieldSysPath = ClassLoader.class.getDeclaredField("sys_paths");
      fieldSysPath.setAccessible(true);
      fieldSysPath.set(null,null);
    } catch (NoSuchFieldException | SecurityException | IllegalArgumentException | IllegalAccessException e) {
    }
  }

  public static void load_library(String library) {
    Runtime.getRuntime().loadLibrary(library);
  }

  public static void load_library(String path,String library) {
    Runtime.getRuntime().load(path + "\\" + library + ".dll");
  }

  public OpenJDK11_HotSpot_Bug() {
    initComponents();

    //This works on OpenJ9 but not HotSpot
    update_lib_path(EXTRACT_PATH);

    load_library("ProjectDLL");
    load_library(EXTRACT_PATH,"ProjectDLL");

    //This will cause the new ImageIcon to break for everything after version jdk-11.0.6+10 of HotSpot but works on OpenJ9
    //update_lib_path2(EXTRACT_PATH);

    java.util.List<Image> icons = new ArrayList<>();
    ImageIcon icon = new ImageIcon(getClass().getResource("/images/sys_icon.gif"));
    Image image = icon.getImage();
    icons.add(image);
    setIconImage(image);

    icons = new ArrayList<>();
    icon = new ImageIcon(getClass().getResource("/images/button_image.gif"));
    image = icon.getImage();
    icons.add(image);
    jButton1.setIcon(icon);
  }

It depends on whether this functionality is covered by the TCK or not (we won't know if we trip that until we get to Eclipse as part of our move).  I'd recommend submitting your issue to 2d-dev AT openjdk DOT NET (I'd avoid any mention of OpenJ9 there).

@devilsclaw Are you able to try with the latest 11.0.15?

authors: aahlenst devilsclaw karianna

repo: adoptium/adoptium-support


text:
Support user-provided credentials for private docker registry

For the private docker registry, we should also consider supporting user-provided credentials.
Originally posted by @llxia in https://github.com/adoptium/aqa-tests/issues/2645#issuecomment-1049119075
This will be needed for docker based CRIU testing https://github.com/eclipse-openj9/openj9/issues/14486

This issue is resolved.

repo: adoptium/aqa-tests


text:
JDK19+ AIX exclude sun/security/krb5/auto/Cleaners.java

JDK19+ AIX exclude sun/security/krb5/auto/Cleaners.java
Related https://github.com/eclipse-openj9/openj9/issues/16248
Signed-off-by: Jason Feng fengj@ca.ibm.com

@llxia @Mesbah-Alam could you please review?
FYI @smlambert


text:
How to obtain the contents of the file jdk_default_export_to_unnamed.cfg

Hi，
jdk_default_export_to_unnamed.cfg is used to filter out the unwanted add-exports option.
           if (jdkDefaultExportToUnnamed.contains(packageName.get())) {
                continue;
            }

how to obtain the contents of the file jdk_default_export_to_unnamed.cfg?
such as the ‘sun.awt’ ， i think it shoud add '--add-exports=java.desktop/sun.awt=ALL-UNNAMED' , but it is in jdk_default_export_to_unnamed.cfg

The content of jdk_default_export_to_unnamed.cfg is from https://github.com/openjdk/jdk11u-dev/blob/master/src/java.base/share/classes/jdk/internal/module/jdk8_packages.dat

The content of jdk_default_export_to_unnamed.cfg is from https://github.com/openjdk/jdk11u-dev/blob/master/src/java.base/share/classes/jdk/internal/module/jdk8_packages.dat

thanks for reply to the source of cfg.
import sun.awt.AppContext;
public class Main {
    public static void main(String[] args) {
        AppContext appContext = AppContext.getAppContext();
    }

Main (in unnamed module @0x1a86f2f1) cannot access class sun.awt.AppContext (in module java.desktop) because module java.desktop does not export sun.awt to unnamed module @0x1a86f2f1

this  example should be suggested to add '--add-exports=java.desktop/sun.awt=ALL-UNNAMED',  it didn't,  i think it's caused by  ‘sun.awt’ in jdk_default_export_to_unnamed.cfg

It seems that we misunderstood the functionality of jdk_8_packages.dat. I'll make an investigation.

authors: D-D-H qiuchenjian


text:
Including CRac for container image

Features that impact the whole project (e.g. Adding a new OpenJDK distribution) are made over at the adoptium repository.
Otherwise, please describe what enhancement you would like to see in the build scripts:
I'm follow the https://foojay.io/today/springboot-3-2-crac/ with temurin jdk to work for CRac, and it's failed.
Unrecognized VM option 'CRaCCheckpointTo=/tmp/tmp_checkpoint'

I think the reason is temurin jdk have not include the CRac, and i'm using the container image of eclipse-temurin:21.0.1_12-jdk.
It's the useful feature, could you please build the jdk of including the CRac? Thanks.

Since I'm using containers, I'm not sure if I should reopen the issue at https://github.com/adoptium/containers ,I will move to this if needed.

more info:

https://foojay.io/today/introducing-the-openjdk-coordinated-restore-at-checkpoint-project/
https://github.com/CRaC/openjdk-builds/releases/

Is it possible for temurin to build a JDK that includes a CRac version?

This was discussed in the PMC call today. The outcome was that since CRaC is not yet a stable part of the main openjdk codebase we would not be comfortable shipping it at Adoptium at this time unfortunately.
Until that changes, you cold download a build with CRaC from one of the following OpenJDK providers:

https://www.azul.com/products/components/crac
https://bell-sw.com/libericajdk-with-crac (You will note that this page says "Please note that it is based on new UNTESTED technology")

Thanks for quickly reply. :)

authors: liangyuanpeng sxa

repo: adoptium/temurin-build


text:
[Snyk] Upgrade commons-io:commons-io from 2.13.0 to 2.15.0

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade commons-io:commons-io from 2.13.0 to 2.15.0.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 2 versions ahead of your current version.
The recommended version was released 2 months ago, on 2023-10-21.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

Current version is 2.15.1

repo: adorsys/keycloak-config-cli


text:
Fix #8

This commit will add new condition checks if the power state of switch is changed.
fixes #8.
Please check and merge!

Thank you for your review! I made a new commit based on your comment!


text:
Feature/add python3.12 drop python3.7

Closes #111

Codecov Report

Merging #112 (c9f62ec) into main (0e7adb3) will increase coverage by 0.12%.
The diff coverage is 100.00%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
@@            Coverage Diff             @@
##             main     #112      +/-   ##
==========================================
+ Coverage   96.93%   97.06%   +0.12%
==========================================
  Files          67       66       -1
  Lines        2320     2284      -36
  Branches      336      327       -9
==========================================
- Hits         2249     2217      -32
+ Misses         61       58       -3
+ Partials       10        9       -1

Files
Coverage Δ

di/_container.py
93.85% <ø> (-0.03%)
:arrow_down:

di/_utils/concurrency.py
100.00% <ø> (ø)

di/_utils/inspect.py
100.00% <100.00%> (ø)

di/_utils/types.py
100.00% <100.00%> (ø)

di/api/dependencies.py
100.00% <100.00%> (ø)

di/api/executor.py
100.00% <100.00%> (ø)

di/typing.py
100.00% <100.00%> (ø)

docs_src/bind_as_a_dep.py
100.00% <100.00%> (ø)

docs_src/solved_dependent.py
100.00% <100.00%> (ø)

tests/docs/test_sharing_example.py
100.00% <ø> (ø)

... and 3 more

... and 2 files with indirect coverage changes

Omg, I made smth bad for python3.8
I think it is a question of imports

Hmm, I believed that get_origin, get_args have become available in python3.8 and it is safe to them use just from std...)

Hmm, I believed that get_origin, get_args had become available in python3.8 and it is safe to use them just from std...)

I don't think so: https://github.com/python/typing_extensions/blob/b6318ab4b4777a38b468eef7aae97061c283eb8d/src/typing_extensions.py#L1175-L1177

I don't think so: https://github.com/python/typing_extensions/blob/b6318ab4b4777a38b468eef7aae97061c283eb8d/src/typing_extensions.py#L1175-L1177

Okay, I see.
Thanks for pointing that out.

@adriangb Please, review

authors: adriangb codecov-commenter maxzhenzhera

repo: adriangb/di


text:
Can Face templates be read?

PyZatt version: Latest
Python version: 3.10
Operating System: Windows / WSL

Description
Is it possible to download Face templates using this library?
I found a recommendation to check out this library from an issue in the PYZK library (https://github.com/fananimi/pyzk/issues/183#issuecomment-1578593618).
What I Did
Running the codebase locally, but am unable to find any reference to face templates or information.

Hey @kriscamilleri,
Did you perhaps find an answer? I need to pull face templates from the device as well.

Alas, I got nowhere. This seems to be a dead end - from what I gather the maintainers are not interested in adding this feature, and I lack the time and resources to investigate this at a lower level. Sorry to be the bearer of bad news.

Okay, I appreciate your quick answer anyway. Thanks.

repo: adrobinoga/pyzatt


text:
Generate an index page of all pages

[x] Needs to actually create links, still deciding on design for that.
[x] Then need to hook it up to current template in config.
[x] Lastly, passing this config.Config around is getting silly.

Merging this, there is now an index which list pages! :tada:

repo: aedipamoss/stationery


text:
Update config.yml

Change added

does not work!!

repo: aelmahra/continuous-integration-circle


text:
Discussion: Multi-OS support

Those who have followed the project know that I'm very hesitant to add support for other OSs in goss. This ticket is to discuss some of the challenges that need to be solved prior to dedicating time/resources to this endeavor:

Locally testing and reproducing bugs - Currently any goss feature/test can be reproduced on a Linux, OSX, and windows machine through docker. What would be the path to locally test/reproduce features locally for Windows and OSX?

Similar to 1 above. Currently, due to docker providing a reproducible test environment, it is very easy to implement CI for goss in travis or other CI engines so long as they support docker. What would be the path to provide isolated/reproducible tests Windows and OSX?

Some concepts in goss don't translate well for windows/OSX. For example, package managers. Goss assumes one package manager per distribution. Windows and OSX are a bit different when it comes to this. For example, windows has packages that can be queried through powershell, but also has a bunch of 3rd party package managers (eg. chocholaty, scoop, appget.). OSX has appstore (not sure how to query this on the CLI or if it's even worthwhile), but then there's macports/brew/nix. What will be the criteria that determines what will be supported by goss and what won't be? Regardless of choice, #539 would have to be completed first.

Given that I currently do not have an interest in maintaining Windows and OSX support, how will this effort continue to be maintained? If maintainers will step up and own parts of the code, what happens when they inevitably move on? Would windows/OSX just be unsupported versions of goss?

ROI... I assume Goss on Linux will naturally attract both greater interest as well as support from the open-source community. Is Goss useful for OSX given that it's not a common server platform? For windows, how likely are windows sysadmins to use Goss. Does the concept of a YAML-based, CLI system testing tool make sense inside of a Microsoft ecosystem?

👋 I do various multiplatform things. I'm currently evaluating different serverspec style tools to as part of a package building pipeline. I found goss, and the small nature of it appealing. But, windows and osx support are pretty key. Some rambling...

I'm wondering if it makes sense to split Goss up into multiple distributions/projects with different maintainers (from #411)

I think this is undesirable. It makes things much less simple.

Locally testing and reproducing bugs

I think that's a hard, if not impossible, problem. While there are some VM answers, they're cumbersome. It's not ideal, but I've taken the approach of trying to have well tested pieces (if not existing cross platform go libraries), and building on them. I don't worry much about daily work on windows, I spin that up as needed.

implement CI for goss

There are mac and windows CI options. Similar to the local testing, this may not be critical. But, I believe travis, Azure, and circleci all have options here. (I don't much use travis anymore, it seems pretty moribund)

Given that I currently do not have an interest in maintaining Windows and OSX support, how will this effort continue to be maintained

That seems harder. goss looks like a small project, with a single busy maintainer. Either it has some less loved parts, or it gets bigger. (https://github.com/aelsabbahy/goss/issues/411)

Goss useful for OSX given that it's not a common server platform? For windows, how likely are windows sysadmins to use Goss. Does the concept of a YAML-based, CLI system testing tool make sense inside of a Microsoft ecosystem?

That seems like a narrow view of what it's useful for. As mentioned, I'm looking to test package behaviors.

Some concepts in goss don't translate well for windows/OSX. For example, package managers. Goss assumes one package manager per distribution

I think this is the core of it. But, I don't know that it needs to be perfect. I think it depends on where the project goes. I could imagine a framework where not all drivers are supported on all OSes.

Things like  process & file is based on an underlying library that already has cross platform support. Those are easy.
service is a really tricky question. I think it has a pretty clear meaning on windows, but I think on linux it's much less clear. I didn't trace through the code to see how that's determined, but it seems fraught.
Similar, package. While there are only a couple common packaging systems, there's a lot of complexity in the weeds.

Another route here, would be to use osquery. This was discussed a bit in https://github.com/aelsabbahy/goss/issues/198

Wonder if it would be best to just rely 90-100% on unit tests for Windows/OSX?

That seems like a narrow view of what it's useful for. As mentioned, I'm looking to test package behaviors.

Can you expand on this or provide some examples of this use case?

That seems like a narrow view of what it's useful for. As mentioned, I'm looking to test package behaviors.

Can you expand on this or provide some examples of this use case?

Sure! I was saying I thought testing servers was narrow. Specifically the server part. One of the big shifts I've seen in the last several years, is that endpoint management has adopted more and more configuration management tools. There's clear space to help with any kind of verification and testing of that.
As said, I'm currently looking to test packaging builds. For me, this is basically targeting laptops. Did this msi put the files where I wanted?  Did the rpm install a systemd file that correctly tried to start a service? The the pkg install? Are they detected as code signed?
I generally think of goss in the same category as inspec and serverspec. Some use cases I've seen for those tools that are often server oriented, but not inherently. Another one, mostly from inspec is compliance oriented testing.

For 1 and 2, a solid unit test coverage in conjuncture with a CI Integration Test step that targets all supported OSs (with the ability to run them locally if the OS matches) should suffice. The ability to spin up an annoying VM is aways around to debug complex bugs.
3 If a concept doesn't translate well then simply don't implement it and evaluate the user requests.
4 Allow the interested contributors to add the other OSs support under some kind of "preview" mode. I am not fully convinced that the code changes will be drastic. If these changes aren't too vast the upkeep should be minimal by relying on the CI Integration Testing.
5 I agree with @directionless that there are many more uses for Goss that just testing servers. Even testing servers is a wide topic that can go into compliance testing very easily.

Locally testing and reproducing bugs - Currently any goss feature/test can be reproduced on a Linux, OSX, and windows machine through docker. What would be the path to locally test/reproduce features locally for Windows and OSX?

travis supports both platforms; while that's not ideal, it's probably fine for a gate initially.
It's quite likely that people wanting support for Windows and OSX will have those platforms, at which point the problem is limited to just having a working golang toolchain installed, which is an installer package for either platform.
On macOS, within our internal CI, we're starting to use Anka, which is a container-analogue for macOS that looks promising. It's sadly not OSS or I'd suggest it.

Similar to 1 above. Currently, due to docker providing a reproducible test environment, it is very easy to implement CI for goss in travis or other CI engines so long as they support docker. What would be the path to provide isolated/reproducible tests Windows and OSX?

I'd be satisfied with travis' Windows and OSX support; it provides clean enough instances per job IMO, and I'd be comfortable executing integration tests directly on the reproducible-enough host, there.

Some concepts in goss don't translate well for windows/OSX.

I'm personally not so invested in the package assertion being cross-platform implemented - as in, it would be nice, but I can work around it via command very readily. Usually, I want to know that a binary is present on PATH and it doesn't matter as much to me how it got there. (Others' mileage may clearly vary)
The ones besides package-managers that stand out for me are

file: logically the same file can exist at different paths on different platforms; it would be advantageous to make the file key be a name, and introduce a paths dictionary to the assertion keyed on platform name to allow the same file content to be asserted against at a platform-specific location. Similar to how command now has an exec attribute that is the actual command to assert against.
file: there's different symlink logic going to be required on Windows - but many people on Windows tend to not use symlinks.
file: mode/user/group are not a thing on Windows, but Windows instead has a very expressive ACL system. (some might say too expressive...)
service: would need launchd and windows service manager implementations
group: would be a different implementation on Windows (net localgroup ... or the newer powershell cmdlets)
interface: would probably not work without changes on Windows.
mount: would have Windows-specific semantics as Windows filesystems are volume centric
user: would be a different implementation on Windows (net user ... or the newer powershell cmdlets)

[maintenance]

At improbable, we're willing to chip in some support and maintenance; we depend on goss cross-platform. We use it for

local workstation drift detection
CI drift detection (and, more recently, automatically killing agents that drift)

[ROI]

goss is useful for both. I'd argue more so Windows and OSX because those platforms

have by comparison a more difficult configuration-management experience
(Windows) fewer people that are command-line first

so being able to make machine assertions is more valuable because the chance of drift is way higher.

How does this sound as a game plan?

Create $Resource_$OS.go files to open the door for other OS support in the future. (This can be started now)
Create a ticket for each resource/os combination or one for OS where we can agree on syntax for that particular resource and possible dependency changes.
For Windows/osx unit tests will be required, maybe a smoke test in CI can be added too as a bonus.
Documentation changes required to mention the "beta" nature of multi-os initially.

file: logically the same file can exist at different paths on different platforms; it would be advantageous to make the file key be a name, and introduce a paths dictionary to the assertion keyed on platform name to allow the same file content to be asserted against at a platform-specific location. Similar to how command now has an exec attribute that is the actual command to assert against.

@petemounce I'd like to discuss this further maybe in a ticket from item 2 above.

Also, as a side.. potentially related note. There's a batch of changes scheduled that will hopefully be major enhancements to both the templating and matching logic.
Trying to balance those and new OS support.

@petemounce
To make progress on this, and since you guys at improbable have already made progress on this.
How does this sound?

Close out all existing multi-os tickets.
Create _linux.go files and add notimplented errors
Add windows/osx update document with table that shows what's supported where. (Have unit tests with this)
See what the next steps are from there

Sorry for taking a while to respond. Crazy world. Thank you for chasing, and progressing!
I think those steps are very workable.
I think renaming files to _linux.go is unnecessary; I think it will be less effort overall to introduce _windows.go and _darwin.go only where needed. Based on our (caveat: not exhaustive) trials, many things work fine.
I think a matrix is a great idea. I propose 2 columns per OS, one each for implemented-with-unit coverage and with integration coverage. Maybe one more for tracking issue? The more granular, the more likely contributions will drive by.
I'll open a PR to add the changes we made to enable the binaries to be output from CI tomorrow, and document those as alpha. Does that sound alright?

Yeah, that sounds great. I would like a table in the documentation for what's supported for each platform.

I think renaming files to _linux.go is unnecessary

I just meant for things that aren't cross-platform. Otherwise, what happens when yaml contains an unsupported test for that platform?
I have a lot of changes that in excited for going into the 0.4.0 release, maybe initial multi-OS can be part of it.

I just meant for things that aren't cross-platform. Otherwise, what happens when yaml contains an unsupported test for that platform?

Gotcha, ok.

authors: aelsabbahy directionless pedroMMM petemounce

repo: aelsabbahy/goss

license_source: bigquery


text:
Move platform check into ACLGenerator

fixes #188

Hey Bastian, this is looking really good so far. I am going to leave the review to @jtwb. We have a slack channel btw if you wish to join for closer collaboration.

authors: ankenyr btriller

repo: aerleon/aerleon


text:
Added detection of platform not supporting webpush

Description
JIRA: AEROGEAR-9899
Checklist

[x] npm test passes
[x] npm run build works
[x] tests are included

I haven't validated the changes.

authors: wtrocki ziccardi

repo: aerogear/aerogear-js-sdk


text:
Not doing anything in Radarr or Sonarr[BUG]

Hey,
I like the program, it has gone through all of my libraries and found about 150 problems.
I have the list, so I can do delete them and had then sonarr and radarr will go find new ones (if I have those files monitored), but I thought this program did that automatically.  If so, I can't figure out how to get it to work.  The webui is working, and I see the list there.  I don't get any errors.  And right now I'm just exporting it to a .csv and manually deleting.  Many thnaks!
Here is my config.
checkrr:
checkpath:
- "d:/media/movies"
- "d:/media/Movies (Spanish)"
- "d:/media/tv shows"
- "d:/media/TV Shows (Spanish)"
- "e:/media/movies"
- "e:/media/Movies (Spanish)"
- "e:/media/tv shows"
- "e:/media/TV Shows (Spanish)"
- "g:/my drive/media/movies"
- "G:/My Drive/Media/Movies (Spanish)"
- "g:/my drive/media/tv shows"
- "g:/my drive/media/TV Shows (Spanish)"
database: ./checkrr.db
debug: true
logjson: false
ignorehidden: true
csvfile: "./badfiles.csv"
logfile: "./checkrr.log"
ignoreexts:
- .txt
- .nfo
- .nzb
- .url
arr:
radarr:
process: true
service: radarr # should be one of: sonarr radarr lidarr
address: 127.0.0.1
apikey: "redacted"
baseurl: /
port: 7878
ssl: false
#mappings: # maps directories between docker and arr services
#"/mnt/user/Movies/": "/Movies/" # what radarr sees: what checkrr sees
sonarr:
process: true
service: sonarr
address: 127.0.0.1
apikey: "redacted"
baseurl: /
port: 8989
ssl: false
mappings:
#  "/mnt/user/tv/": "/tv/"

webserver:
port: 8585
baseurl: "/"
trustedproxies:
- 127.0.0.1

hey, a couple of questions:

what does the log file say about sonarr and radarr?
what version of sonarr and radarr are you running?

hey, a couple of questions:

what does the log file say about sonarr and radarr?
what version of sonarr and radarr are you running?

Let me investigate.  the only log I see in the checkrr.log file are these 2 entries at the top.  Everything else is just the results from ffprobe.  is there another log file, or something I have to enable to get more logging detail?
time="2024-07-04T00:19:48-05:00" level=info msg="Sonarr Connected." Sonarr "sonarr" Connected=true Startup=true
time="2024-07-04T00:19:48-05:00" level=info msg="Radarr Connected." Radarr "radarr" Connected=true Startup=true
Versions:
sonarr 4.0.6.1805
radarr 4.0.6.1805

Thank you for your quick response and your time!
Troy

sonarr 4.x and radarr 5.x aren't currently supported: https://github.com/aetaric/checkrr/issues/81

sonarr 4.x and radarr 5.x aren't currently supported: https://github.com/aetaric/checkrr/issues/81

Ok.  Sorry I missed that.
Does checkrr still run on to identify the corrupt files?

Yeah, it works without sonarr and radarr integrated, it just can't tell them fetch replacements if the version is too new.

closing as duplicate

repo: aetaric/checkrr


text:
Count not working as expected

I have a custom child object with a lookup to the Opportunity. I want to count the number of child objects with a status of Approved. I can't get it to go past counting 1.

Try setting Field to Aggregate to “Id”
On Fri, Oct 11, 2019 at 17:23 meganleary notifications@github.com wrote:

[image: Screen Shot 2019-10-11 at 5 22 58 PM]
https://user-images.githubusercontent.com/42704220/66685923-ce56ad00-ec4b-11e9-88c2-7d4676a07bf0.png
[image: Screen Shot 2019-10-11 at 5 23 31 PM]
https://user-images.githubusercontent.com/42704220/66685946-df072300-ec4b-11e9-8500-91863ec712f4.png
[image: Screen Shot 2019-10-11 at 5 23 31 PM]
https://user-images.githubusercontent.com/42704220/66685949-e0d0e680-ec4b-11e9-9947-7f830f888130.png
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/afawcett/declarative-lookup-rollup-summaries/issues/871?email_source=notifications&email_token=AA6XRLBJQ7ICL5FSW47NDDTQODVGJA5CNFSM4I77OM2KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBBH7YA#issuecomment-541229024,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA6XRLH2NKI3E5BIOFWOP3DQODVGJANCNFSM4I77OM2A
.

I am a bit confused by this rollup. It looks like your criteria is dependent on a standard field (hence no __c) called Status on your child object Quote_Request__c. is that correct? If so, thats news to me that such a standard field exists on custom objects. Typically one uses Workflow or Process Builder to update a custom field with an applicable value/status and thus then your rollup would reference that? @JimBTek am I missing anything here in my thoughts?

authors: afawcett meganleary rogeramitchell


text:
use check_mode instead of always_run

Deprecated as of Ansible 2.2.
https://github.com/willthames/ansible-lint/issues/220

Sorry, it's my mistake.

repo: afeld/ansible-util


text:
Position of the dialog

Is it possible to set the position of the dialog when it is displayed? For example, I would like to set gravity to top and margin and etc.

Same way you would do it with a stock dialog, if it's possible. MaterialDialog  inherits android.app.Dialog.

repo: afollestad/material-dialogs


text:
Commit #2

Stack from ghstack (oldest at bottom):

#23
-> #22
#21

Signed-off-by: Andrea Frittoli andrea.frittoli@gmail.com

/rebase

Something went wrong with your /rebase command: please check the logs.

/rebase

Something went wrong with your /rebase command: please check the logs.

repo: afrittoli/sandbox


text:
[CLI] only basic readline key bindings implemented - would like others

would like others like bash has, like alt-f/alt-b to move fwd/back one word, and alt-u for undo, etc.
note I've got some details in separate notes for possible approaches to try...

here's a link to a full list of standard readline key bindings, as experienced in e.g. bash.  if ultimately have to, could maybe at least explicitly add several highly-desired bindings from this list:  http://readline.kablamo.org/emacs.html
but preferably there's hopefully maybe a way to get all that through some sort of extended-defaults setting in the readline package?


text:
Troubleshooting InstancedMesh2 in R3F: culling issues / manual instance creation

I am trying to use component InstancedMesh2 in my R3F based project. I am manually creating instances and adding to the scene. Before rendering I call updateCulling however nothing happens, i.e. the number of rendered objects remains the same despite, for example, a different camera placement. What am I doing wrong ? Can I use InstancedMesh2 in this way (e.g. without initializing the “main” object from the library) ?

const GridPureJSIM2: React.FC<GridProps> = ({ grid, size = 200 }) => {
    const { scene, camera } = useThree();
    const gridHalfSize = size / 2;
    const countX = grid.length;
    const countY = grid[0].length;

    const visibleSquares = useMemo(() => {
        const squares = [];
        for (let x = 0; x < countX; x++) {
            for (let y = 0; y < countY; y++) {
                if (grid[x][y].visible) {
                    squares.push([x - gridHalfSize, y - gridHalfSize]);
                }
            }
        }
        return squares;
    }, []);

    const geometry = new THREE.BoxGeometry(1, 1, 0.1);
    const material = new THREE.MeshBasicMaterial({ color: 'darkblue' });

// MAIN PART :

    const trees = new InstancedMesh2(geometry, material, visibleSquares.length, {
        behaviour: CullingStatic,
        onInstanceCreation: (obj, i) => {
            // const [x, y, z] = visibleSquares[i];
            // obj.applyMatrix4(new THREE.Matrix4().makeRotationX(Math.PI / 2).setPosition(x + 0.5, 0.01, y + 0.5));
        }
    });

    React.useEffect(() => {
        for (let i = 0; i < visibleSquares.length; i++) {
            const [x, y, z] = visibleSquares[i];
            trees.setMatrixAt(i, new THREE.Matrix4().makeRotationX(Math.PI / 2).setPosition(x + 0.5, 0.01, y + 0.5));
        }

        trees.updateMatrix();
        camera.updateMatrixWorld(true);
        scene.add(trees);

        return () => {
            scene.remove(trees);
            trees.dispose();
            geometry.dispose();
            material.dispose();
        };
    }, [visibleSquares, scene]);

    useFrame(() => {
        trees.updateCulling(camera);
    }, -1); //before render**

    return null;
};

export default GridPureJSIM2;

When using CullingStatic it's necessary to initialize the matrices of all instances inside the onInstanceCreation callback, because this creates a BVH that can no longer be modified (that's why it's static).
However, I will soon release a new library, completely rewritten, with better performance and more features, including sorting, dynamic BVH, and no more need to call updateCulling manually.
Repository of new library: https://github.com/three-ez/instanced-mesh
I am glad to see my library also used with r3f, if you want we can write each other on discord so I can let you try the new library too.

I have prepared an example for you with the new library:
https://stackblitz.com/edit/three-ez-instancedmesh2-test?file=src%2Fmain.ts
What do you think? :)

Thanks for the quick response and the prepared example! It looks very promising! Despite the large number of objects fps are at maximum level. Everything works as it should.

However, I will soon release a new library, completely rewritten, with better performance and more features, including sorting, dynamic BVH, and no more need to call updateCulling manually.

So far I have been using the https://www.npmjs.com/package/@three.ez/instanced-mesh version.
I searched the npm repository by name and found https://www.npmjs.com/package/@three.ez/instanced-mesh-test/v/0.0.4 - is this the current "beta" version I should use ?

is this the current "beta" version I should use ?

Yes. It's a test package which I will remove later (be sure to use the latest version). Once I'm done I will post again on the '@three.ez/instanced-mesh' package.
I am not very convinced about how to initialize BVH, so I will definitely change the API a bit.
I am open to advice on how to simplify the use of the library 😄

New package for InstancedMesh2 released here: https://www.npmjs.com/package/@three.ez/instanced-mesh

authors: agargaro raptyk


text:
Cannot see urp functioning in Chapter-2

In chapter-2 code, I'm doing the following:
1)starting in debug mode, as maven > debug As > start-ch2-server-custom-update-request-processor
2)opening localhost:8983/solr and selecting urp
3)going to "documents" tab (on right side), and putting json entry: {"id":"id1","isbn":"isbn1","title":"title1_","author":"author1"} and committing in Solr
4)when i query ":", it is still showing "title1_". I understood that it should instead be showing "title1" (no underscore at end)
Please if it may be confirmed if something else needs to be done to get the expected result from urp..

Hi thanks for entering this. I don't have my laptop at the moment so I cannot be sure about what's going wrong. I will try to reproduce your scenario and then I will come back to you with the explanation

Hi @KunjPrasad,
just pushed a fix for that issue: that was a fault of mine, a wrong
parameter declaration didn't allow a correct recognition of the target
fields.
Now it should be ok: if it is, please close the issue
Many thanks again,
Andrea
2015-07-12 18:20 GMT+02:00 KunjPrasad notifications@github.com:

In chapter-2 code, I'm doing the following:
1)starting in debug mode, as maven > debug As >
start-ch2-server-custom-update-request-processor
2)opening localhost:8983/solr and selecting urp
3)going to "documents" tab (on right side), and putting json entry:
{"id":"id1","isbn":"isbn1","title":"title1_","author":"author1"} and
committing in Solr
4)when i query ":", it is still showing "title1_". I understood that it
should instead be showing "title1" (no underscore at end)
Please if it may be confirmed if something else needs to be done to get
the expected result from urp..
—
Reply to this email directly or view it on GitHub
https://github.com/agazzarini/apache-solr-essentials/issues/16.

Thanks for the fix (p.s. Wonderful and very helpful book. Thanks)

you're welcome ;)

authors: KunjPrasad agazzarini

repo: agazzarini/apache-solr-essentials


text:
🛑 Formulaire activités sécurité UdeS (prod) is down

In 01a2cb9, Formulaire activités sécurité UdeS (prod) (https://www.usherbrooke.ca/smsp/service-a-la-clientele/activites-sur-les-campus) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Formulaire activités sécurité UdeS (prod) is back up in 6c344cd.


text:
Replace "null" to empty string

On some pages the meta attributes like og:image, author or date have "null" (string) value so this should be replaced with null or empty string.

Would it be possible to add a test case that covers this?

@ageitgey can you merge this? or there is any contraindications?

done

Can you rebuild scripts and update version in git/npm yet? Thanks

authors: ageitgey tykarol

repo: ageitgey/node-unfluff


text:
Creating environment using anaconda

Hi,
I received error like below when I executed  conda env create -f environment.yml
Is it ok? or it is not ok,  What should I do to resolve this issue?
Error:
Pip subprocess error:
ERROR: Could not find a version that satisfies the requirement tensorflow-data-validation==0.15.0 (from -r C:\Users\xxxxxxxxx\Downloads\handson-ml-master\handson-ml-master\condaenv.du4xm5kl.requirements.txt (line 9)) (from versions: 0.21.0, 0.21.1, 0.21.2, 0.21.4, 0.21.5)
ERROR: No matching distribution found for tensorflow-data-validation==0.15.0 (from -r C:\Users\xxxxxxxxx\Downloads\handson-ml-master\handson-ml-master\condaenv.du4xm5kl.requirements.txt (line 9))
CondaEnvException: Pip failed

I resolved it to modify environment.yml file.
Originally, this configuration file input tensorflow-data-validation==0.15.0, but even if I make environments using conda, my environments failed and shows it looks able to use more than 20, so I updated it tensorflow-data-validation==0.21.0 then it succeeded to build environment using conda. But I am not sure it may happen error someday to validate data using tensorflow.

repo: ageron/handson-ml


text:
Something wrong with primary key index on table - Not expected

sample test below fails with "Something wrong with primary key index on table" which I would not expect.
let alasql = require('alasql');

let DemoDB = {
    appliance: [
        {name: 'A', type: 'Fast'},
        {name: 'B', type: 'Medium'},
        {name: 'C', type: 'Slow'}
    ],
    alerts: [
        {sev: 'Critical', appliance: 'A'},
        {sev: 'Major', appliance: 'A'},
        {sev: 'Minor', appliance: 'B'},
        {sev: 'Info', appliance: 'C'},
        {sev: 'Critical', appliance: 'C'},
        {sev: 'Major', appliance: 'B'},
        {sev: 'Minor', appliance: 'A'}
    ]
}

alasql('CREATE DATABASE [Demo]');
alasql('USE DATABASE [Demo]');

alasql("CREATE TABLE appliance (name STRING PRIMARY KEY, type STRING)");
//alasql("CREATE TABLE appliance (name STRING, type STRING)");

alasql("CREATE TABLE alerts (sev STRING, appliance STRING REFERENCES appliance(name))");
//alasql("CREATE TABLE alerts (sev STRING, appliance STRING)");

alasql('SELECT * INTO appliance FROM ?',[DemoDB.appliance]);
alasql('SELECT * INTO alerts FROM ?',[DemoDB.alerts]);

// alasql('SELECT * INTO appliance FROM JSON("appliance.json")');
//alasql.tables.appliance.data = DemoDB.appliance;
//alasql.tables.alerts.data = DemoDB.alerts;

console.log(alasql("SELECT * FROM appliance ORDER BY name DESC"));
console.log( alasql("SELECT * FROM alerts ORDER BY appliance"));

console.log("Delete alerts:",alasql("DELETE FROM alerts WHERE appliance = 'A'"));
//
// **** Fails here: Error: Something wrong with primary key index on table
//
console.log("Delete appliance:",alasql("DELETE FROM appliance WHERE name = 'A'"));

console.log(alasql("SELECT * FROM appliance ORDER BY name DESC"));
console.log( alasql("SELECT * FROM alerts ORDER BY appliance"));

Hi,
I had a quick look at this and the bug replication code can be distilled to just one table using a primary key:
let alasql = require('alasql');

let DemoDB = {
    appliance: [
        {name: "A", type: 'Fast'},
        {name: "B", type: 'Medium'},
        {name: "C", type: 'Slow'}
    ]
}

alasql('CREATE DATABASE [Demo]');
alasql('USE DATABASE [Demo]');

alasql("CREATE TABLE appliance (name STRING PRIMARY KEY, type STRING)");
alasql('SELECT * INTO appliance FROM ?',[DemoDB.appliance]);

console.log("Delete appliance:",alasql("DELETE FROM appliance WHERE name = 'A'"));

The error comes from within the table["delete"] function:
		if (this.pk) {
			var pk = this.pk;
			var addr = pk.onrightfn(r);
			if (typeof this.uniqs[pk.hh][addr] === 'undefined') {
				throw new Error('Something wrong with primary key index on table');
			} else {
				this.uniqs[pk.hh][addr] = undefined;
			}
		}

pk.onrightfn(r); returns undefined
uniqs[pk.hh]; is an empty object

Any updates on this issue? I'm still getting the same error when trying to delete from a table with a primary key

Some comments:

The issue does not only arise with deletion from tables with primary key after filling with 'SELECT * INTO'-statements but also with deletion from tables having UNIQUE constraints after analog use of 'SELECT * INTO’ before.
There are two problems:

The root cause of the issue is  'SELECT INTO' logic circumventing the usual insert logic by doing a push directly on the table data (file 40select.js, lines 308-315 - at time of writing, code may change).

The second problem comes from the deletion: primary key and unique key indices are checked on deletion, and if one or the other does not exist an exception is thrown (file 60createtable.js,  lines 544 and 553). The check in itself makes sense, but it is a check not on the users data (which may or may not be correct regarding the primary key or the uniqueness) but on the internals of the database. Hence, a user of the library would expect an error statement but no exception, making the ‘SELECT INTO’-logic unusable to him. Hence, I would prefer lines 544 and 553 of  60createtable.js to hold logging statements with additional information on the context (affected table etc.).

The root issue with ‘SELECT INTO’ is similar to issue #92 with ‘INSERT INTO’ solved in April 2015 (where a direct concat of the data was used instead of insert).

I made a quick fix replacing lines 308-315 of 40select.js with the following code:

`query.intofns =
"var db = alasql.databases['" +(this.into.databaseid || databaseid) + "'];" +
      "var table = db.tables['" + this.into.tableid + "'];" +

      "var cR = alasql.utils.cloneDeep(r);" +

      "if (table.defaultfns) {" +

      "  var defaultfns = 'return alasql.utils.extend(r,{' + table.defaultfns + '})';" +

      "  var defaultfn = new Function('r,db,params,alasql', defaultfns);" +

      "  defaultfn(cR, db, [], alasql);" +

      "}" +

      "if (table.insert) {" +

      "  table.insert(cR, false);" +

      "} else {" +

        "table.data.push(cR);" +

      "}";`

It ran smooth with alasql tests, the test code given in this issue and in my own table with unique constraints. I have not tested tables with column defaults, yet.
However, I am not comfortable with fix and do not directly create a pull request for it: I would prefer a more elaborated version - especially in the long run. On one hand, creating code with string and new Function (or eval()) is not the best solution as long as there are alternatives in a given context. On the other hand, code in ‘INSERT INTO’ and ‘SELECT INTO’ functionality have overlapping logic and an unified version without - partial - code duplication would be preferable.
Hope, it helps!
Thank you for providing AlaSql!

authors: L3bowski RB-News-MailAccount akumadare mwhebert

repo: agershun/alasql


text:
Add Vault as a CA for cert-manager (using internal CA Certs)

Name of the component:  cert-manager
What would you like to be added:  Support to cert-manager component to use cert-manager's exising capabilities to use Vault as the CA instead of LetsEncrypt.
Why is this needed:  Samsung does not want/need external access. In addition, their internal domain for their k8s cluster k8s.smu.shared.lab  is not a real TLD, so LetsEncrypt can't even supply those domains.
Since cert-manager already supports Vault out of the box, we just need to supply parameters to the deployment.
Note that this also requires pre-loading vault with internal CA certs/keys so that it can be the official signer of  k8s.smu.shared.lab domain  certs.

We have done some engineering here. Yet it is not clear how to integrate (or should we) with the other components/stacks.
@rrichardson is this still actual?

We might need a cluster to act as its own CA very shortly, especially if
this HiveCell deal turns out to be beneficial.
However, I think cert-manager can do this without Vault (though not as
securely)
I'll do some digging and see if it's something we'll need.
On Wed, Oct 7, 2020 at 12:13 AM Antons Kranga notifications@github.com
wrote:

We have done some engineering here. Yet it is not clear how to integrate
(or should we) with the other components/stacks.
@rrichardson https://github.com/rrichardson is this still actual?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/agilestacks/components/issues/259#issuecomment-704743936,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAA6KC2LIOKUB32ZI4U5RYLSJQIKXANCNFSM4II7VQLQ
.

authors: akranga rrichardson

repo: agilestacks/components


text:
Question: firing multiple actions

I'm aware of a similar question and I do understand, that using sagas would help (plus that I can dispatch from the "payload", which seems a bit hackish), but would something like this be possible (firing multiple actions in a parallel fashion)?:
return {
    [RSAA]: {
      endpoint,
      types: [
        PRODUCTS_BASES_REQUEST,
        [PRODUCTS_BASES_SUCCESS, FETCH_PRODUCTS_ITEMS],
        [PRODUCTS_BASES_FAILURE, GENERAL_ERROR_NOTIFICATION],
      ],
    },
  };

Is this a silly thing to do, or would a PR help?

Probably we will go with sagas :) I'll close this one, the answer wouldn't be relevant for me anymore.

repo: agraboso/redux-api-middleware

license: mit


text:
Change Clear button to Back - existing sheet

On the first page of the existing monument submission pathway, change the Clear button to Back. When Back is clicked:

Returns to identify page
If user selects the existing sheet pathway again, any data they already uploaded or entered remains
If user selects the new sheet submission path, any previously-entered data in the existing sheet path is reset/removed/deleted
(Back button should be same yellow color as other existing back buttons)

This seems to be a duplicate of #130

This seems to be a duplicate of #130

I altered the title of #130 slightly to account for the difference between the two. It makes sense on the first page of the new sheet path to have all three buttons (back, clear, next), but for an existing sheet it only makes sense to have back and next because there is no keyed-in data to be cleared, and any uploaded file can be removed via #133.

authors: nathankota steveoh

repo: agrc/plss


text:
Loading indicators

We should probably have some sort of loader for the map images since they take significantly longer to load than the text. I also wondered if we should have a loader that shows the overall progress of the report maybe across the top of the window or something.

i really like both of these ideas

authors: stdavis steveoh

repo: agrc/ugs-hazards


text:
Expose session info

See https://github.com/agrover/targetcli-fb/pull/9
Expose session info via rtslib API.

I opted to implement the Session and Connection clases as Snapshots. So the information is parsed on creation and never parsed again for this object. This seemed like the natural way, since session information is volatile. Additionally, it wouldn't make sense to only to update certain attributes of the session, since you have to parse info whole anyways.
The session property of NodeACL is recreated on every access.
Also note, that Session and Connection don't inherite from CFSNode, because they are no cfs nodes.

For reference:
info with no open session:
No active iSCSI Session for Initiator Endpoint: iqn.2005-03.org.open-iscsi:xxx

With an open session (1 local connection):
InitiatorName: iqn.2005-03.org.open-iscsi:xxx
InitiatorAlias: test-host
LIO Session ID: 2   ISID: 0x00 02 3d 11 00 00  TSIH: 2  SessionType: Normal
Session State: TARG_SESS_STATE_LOGGED_IN
---------------------[iSCSI Session Values]-----------------------
  CmdSN/WR  :  CmdSN/WC  :  ExpCmdSN  :  MaxCmdSN  :     ITT    :     TTT
 0x00000010   0x00000010   0x000000d6   0x000000e5   0x2e000000   0x00001e8d
----------------------[iSCSI Connections]-------------------------
CID: 0  Connection State: TARG_CONN_STATE_LOGGED_IN
   Address 127.0.0.1 TCP  StatSN: 0xee10583f

Okay, that should do it. Please review.
If you don't see any problems with this solution, I will merge (--no-ff) it to master.
We could possibly implement FabricModule/Target/TPG to having a list (or generator with yield) of open sessions each. That is basically the same as with has_session, but doesn't stop when just one is found and throws no information away.
This highly depends on how we would display status information. If we don't need it, it might also be "clutter" in the API.
Technically also has_sessions is not a must-have and can be implemented in targetcli. After all you could list all kinds of things on all kinds of levels and also check for these on different levels. We have to implement this in targetlci then.
So if you say has_sessions doesn't belong in rtslib, I can also just merge 5e88ec215548a1f990df3eb4d70bb9a2fbafc686 (classes and .session in NodeACL) for now.

I updated my targetstatus prototype as a usage example of the new rtslib session API.

authors: JonnyJD agrover

repo: agrover/rtslib-fb


text:
Add icons for each device

Perhaps icons (or emojis, although I don't think any is suitable) could be added to categorize those entries which support either the ESP32 or the ESP8266, as well as the upcoming model, the ESP32-S2.
I'm thinking of something like:

ESP-Dash - Beautiful framework for creating remote dashboards. ICON HERE

Instead of:

ESP-Dash - Beautiful framework for creating remote dashboards in the 8266.

but maybe put the colors directly after the link. otherwise it might be quite confusing with linebreaks

authors: agucova stheid

repo: agucova/awesome-esp


text:
Why are we doing everything in the develop branch?

Not urgent, just curious

@corcra I thought that we had now moved to the main branch? @getsarker was working on the dev branch last year to avoid stepping on our toes too much while he implemented some large-ish changes, but I thought that he had merged everything with main? Not checked, so I might be wrong.

Oh good point. Yes these can be auto-merged. Think we should just merge+delete the develop branch so.

authors: corcra tompollard

repo: ahli-chil/chil-website


text:
changelog new update

Description
Screenshots:
Types of changes

How Has This Been Tested?

Checklist:

[ ] My code is tested.
[ ] My code follows the WordPress code style.
[ ] My code follows has extensive inline documentation like the rest of WPGulp.

Follow Emoji Log and describe your PR. Don't post low-quality PR.

repo: ahmadawais/WPGulp


text:
Add Webstudio to No Code

[Please describe your pull request here]
Checklist

[x] The URL is not already present in the list (check with CTRL/CMD+F in the raw markdown file).
[x] Each description starts with an uppercase character and ends with a period.Example: solc-js - JavaScript bindings for the compiler.
[x] Drop all A / An prefixes at the start of the description.

@Aakrut could you please rebase, current state of this patch removes your 4 last changes

authors: Aakrut ahmet


text:
Add CORS middleware to FastAPI application

This update introduces the CORSMiddleware to the FastAPI application, allowing cross-origin requests from any source. The middleware configuration permits all methods and headers, enhancing the application's flexibility for client interactions.

ok

Not a bad idea to add this functionality, but we should be encouraging the use of a reverse proxy.

authors: ayancey zhangqiu-ai

repo: ahmetoner/whisper-asr-webservice


text:
🛑 Bot is down

In 6b9e637, Bot (https://ahq-miness.ahqsecret.repl.co/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Bot is back up in 4018dfa.


text:
🛑 NAS is down

In 061516f, NAS (https://nas.hurtauda.fr) was down:

HTTP code: 0
Response time: 0 ms

Resolved: NAS is back up in e9de230 after 1 hour, 21 minutes.

repo: ahurtaud/upptime


text:
Upgrade @ai16z/eliza to v0.1.6-alpha.4

Updated all @ai16z/* dependencies to v0.1.6-alpha.4
Added dotenv support for secure character-specific secrets management via .env.{character name} files
Updated index.ts to match the latest agent implementation from eliza v0.1.6-alpha.4
Added documentation in README for managing secrets securely using character-specific .env files

Daaaamn, I was too lazy to push yesterday (https://github.com/ai16z/eliza-starter/pull/21) :D

Trying this right now, worth to note that it's not using the character.ts anymore

I will also test it out today , I was also thinking to update this starter code for a while

Respect👍

authors: leonprou mhxw noahgsolomon samarth30 vpavlin


text:
Mekanism-1.7.10-7.1.1.97 Spam tileentity error still occuring. Causes server lag every few seconds

[23:21:33 WARN]: EnergyNet.addTileEntity: mekanism.common.tile.TileEntityChemica
lInjectionChamber@4578af64 (mekanism.common.tile.TileEntityChemicalInjectionCham
ber@4578af64) is still conflicting with mekanism.common.tile.TileEntityChemicalI
njectionChamber@54f65d0a using the same position (overlapping), aborting
[23:21:33 WARN]: EnergyNet.addTileEntity: mekanism.common.tile.TileEntityElectro
lyticSeparator@2fd140ee (mekanism.common.tile.TileEntityElectrolyticSeparator@2f
d140ee) is still conflicting with mekanism.common.tile.TileEntityElectrolyticSep
arator@2f88f9ba using the same position (overlapping), aborting
[23:21:33 WARN]: EnergyNet.addTileEntity: mekanism.common.tile.TileEntityChemica
lDissolutionChamber@1cb4d803 (mekanism.common.tile.TileEntityChemicalDissolution
Chamber@1cb4d803) is still conflicting with mekanism.common.tile.TileEntityChemi
calDissolutionChamber@5c0001b4 using the same position (overlapping), aborting
[23:21:33 WARN]: EnergyNet.addTileEntity: mekanism.common.tile.TileEntityElectro
lyticSeparator@394ff144 (mekanism.common.tile.TileEntityElectrolyticSeparator@39
4ff144) is still conflicting with mekanism.common.tile.TileEntityElectrolyticSep
arator@7e8cdb72 using the same position (overlapping), aborting

This is what I'm getting on my server. Its about Calculator mods Power Cube. What do I do to fix?

authors: djoveryde trismegistis

repo: aidancbrady/Mekanism


text:
Bucketless Fluids and Other Mods

I'm running Mekanism and Refined Storage and I'd like to use the latter to store liquids from the former.  However, Mekanism doesn't have buckets for all their fluids, which is a BIG PROBLEM.  Because of how RS works you can only manipulate fluids that do have bucket (i.e. item) forms. No bucket means no exporting or fluid level detection, which basically means that RS is unable to do anything but store such fluids, much like a black hole. Not Very Useful.
Is there some particular (bad...I mean GOOD) reason most fluids in Mekanism don't have buckets?!?  Were they specifically left bucket-less because of some design scheme/paradigm/realism/balancing reason?!?  Regardless, could you please offer a code switch setting that enables buckets for all fluids, because design schemes/paradigms/realism/balancing reasons are all fine and dandy and whatnot, Until They Get In The Way Of Playing The Game!  I don't care if I have to enter in a console command "enableAllFluidBuckets true" or whatever, just so long as I can get them.

The only fluids that you should be transferring via buckets in Mekanism are heavy water and brine; the rest are either internal or related to the gas API.

I do not know if this is still relevant for you @7OOTnegaTerces , but you can just use a mekanism fluid tank with the relevant fluid in it. Refined storage accepts that for configuring filters. I encountered the same problem today but luckily I was able to find this easy solution.

authors: 7OOTnegaTerces SamuelYaron aidancbrady


text:
modified state value is not reflected into the input field.

What version of million are you using?
2.6.4
Are you using an SSR adapter? If so, which one?
None
What package manager are you using?
yarn
What operating system are you using?
Windows
What browser are you using?
Chrome
Describe the Bug
The variable's state get reset when passing empty string but the input field doesn't get emptied. Problem is demonstrated more clearly through a video
https://github.com/aidenybai/million/assets/12785891/abd5b0cc-39e6-4271-bb73-d09643629e80
What's the expected result?
When resetting the status to empty value, then input field should be reset as well.
Link to Minimal Reproducible Example
Check the video (easy to reproduce)
Participation

[ ] I am willing to submit a pull request for this issue.

I'll come back to this issue when I have a better network connectivity

I had the same issue, I switched to making my input form an uncontrolled component in #655
I wasn't sure if its my implementation problem or the way million decides when to pass updated props to the child component.

I notified core team about this @UzairNoman, @vimode. Thank you both for this. We'll be looking into it.

This issue seems to be related to #797.

/bounty $50

Hey folks, as mentioned on MDN's setAttribute documentation

Using setAttribute() to modify certain attributes, most notably value in XUL, works inconsistently, as the attribute
specifies the default value. To access or modify the current values, you should use the properties. For example, use
Element.value instead of Element.setAttribute().

I've fixed it, opened a PR, and used el.value for such cases. It worked successfully here (I tested it against the github-user-search example). Let me know if there are any tweaks required for #833 :smile:

/attempt #680

/attempt #833

authors: Divy0007 Krishnakalani111 UzairNoman aidenybai ologbonowiwi tobySolutions vimode

repo: aidenybai/million


text:
Find method to fill in missing PseudoDojo PAW cutoffs or drop support?

Unfortunately, the authors of the PseudoDojo PAW tables have said that official hints cannot be provided for the lanthanides due to unavailability of delta-factors calculated for these potentials.
The PseudoDojo team mentioned that

as a rule of thumb, the PAW lanthanides should require about 20 Ha, but consider this as a very qualitative estimate. Moreover, some of the PAW pseudos have 4f electrons in the valence, and this implies that:

more advanced formalisms (e.g. LDA+U or DMFT) may be needed to capture the correct physics
One may need to increase the cutoff for the double grid (pawecutdg in Abinit) to correctly describe the on-site terms in real-space

It seems that for the pseudos that are missing cutoffs, it would be difficult to have even a heuristic estimate.
However, the elements which are missing cutoffs are (in general) also not present at all in the other PseudoDojo families. It could be possible to provide a (nearly) complete family if we drop the troublesome cases (with a warning, of course).

This seems to have become a more pressing issue as we need the PAW potentials in aiida-common-workflows to get EOS results which more closely match those of other codes.

since abinit can read UPF, why not use the SSSP? Then we are sure we are using the same pseudos? That is of course a short term solution but one that might work while you figure out the solution for recommended cutoffs for the PAW pseudos.

I don't think abinit can read UPF, although I could try it.

The maximum cutoff values for all PAW families are
low: 20 [Ha]
normal: 25 [Ha]
high: 25 [Ha]

I suggest using these values to fill in the missing cutoffs.
As recommended by the Abinit devs, I would the following for the PAW duals (pawecutdg)
low: 1.5
normal: 2.0
high: 2.0

@sponce24 , what do you think?

This is the completeness of the PAW cutoffs. For reference, the norm-conserving v0.4 completeness is also shown.

Fixed in PR #42

Fixed in PR #42

repo: aiidateam/aiida-pseudo


text:
Add TaskCollection for waiting_on and children.

Although there remains some debate over whether to use the append or replace method for managing the waiting_on list, I've decided to proceed with the append approach based on my past experiences. We are open to revising this if there is strong opposition.
For instance, the code below demonstrates how to append "task1" and "task2" to the waiting_on list for task3, rather than replacing the existing list with ("task1", "task2"):
task3.waiting_on.add(["task1", "task2"])

TaskCollection
Implement a TaskCollection to store a collection of tasks. This is used for the waiting_on and children attributes of the Task class. For example:
waiting_on = TaskCollection()

waiting_on
Take waiting_on as an example:
# can use the name of the task, or the task object itself
task3.waiting_on.add(["task1", task2])
task3.waiting_on.remove(["task1", "task2"])
task3.waiting_on.clear()

When adding or removing the task, it will check if the task exists or not.
Children
The children attribute is used to assign tasks to a Zone (e.g.,  While zone or If zone). For example,
# add task1 and task2 to the while loop
while_task.children.add(["task1", "task2"])

Codecov Report
Attention: Patch coverage is 95.12195% with 4 lines in your changes missing coverage. Please review.

Project coverage is 76.69%. Comparing base (5937b88) to head (07d8434).
Report is 24 commits behind head on main.

Files
Patch %
Lines

aiida_workgraph/task.py
91.48%
4 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #223      +/-   ##
==========================================
+ Coverage   75.75%   76.69%   +0.94%
==========================================
  Files          70       70
  Lines        4615     5090     +475
==========================================
+ Hits         3496     3904     +408
- Misses       1119     1186      +67

Flag
Coverage Δ

python-3.11
76.69% <95.12%> (+1.03%)
:arrow_up:

python-3.9
?

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

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

I agree, regardless of the debate, good to get the code in for live testing. Maybe experience helps (partially) resolve the debate 🤞

repo: aiidateam/aiida-workgraph


text:
Unimplemented: nested pattern-match on integer values

Error:
   Generating project's blueprint (~/Desktop/.../plutus.json)
Error:
  × Main thread panicked.
  ├─▶ at src/gen_uplc.rs:2712:36
  ╰─▶ not yet implemented
  help: set the `RUST_BACKTRACE=1` environment variable to display a backtrace.

Minimal example:
  expect (1, _) =
    (1, 2)
  True
}

Reporting as bug as the keyword either should work as expected, or throw a legible error.

Using expect to assert on the value of an Integer (or ByteArray) is not supported and will unlikely be in the near future.
Instead, we ought to provide a better error during code generation or, to forbid this entirely during type-check.

duplicate of #631

authors: KtorZ micahkendall

repo: aiken-lang/aiken


text:
Installation guide is only meant to be run from main branch?

Hello,
I'm following the guide to install this, but with a twist as I checkout the latest tag in order to not run from the main branch. Is this unsupported and shouldn't be done, or wasn't considered?
I do my best to run known releases of things, but let me know if this shouldn't be done here.
OS: Ubuntu 22.04.4 LTS
Steps to reproduce:
1/ install AIL
2/
$ pwd # ensure you're in the AIL directory
$ sudo apt install pipx
$ pipx install poetry # recommended way to install poetry, by poetry: https://python-poetry.org/docs/
$ pipx ensurepath
$ git clone https://github.com/ail-project/lacus.git
$ cd lacus
$ git checkout v1.10.0 # latest release at time of writing this
$ poetry install
$ poetry shell
$ playwright install-deps
$ echo LACUS_HOME="`pwd`" >> .env
$ poetry run update --init
No logging config file available.
Falling back on sample config, please initialize the logging config file.
* Update repository.

You are not currently on a branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.

    git pull <remote> <branch>

I think it comes from https://github.com/ail-project/lacus/blob/2482a07e59d46517f57efcbe259f2c93afe7c568/bin/update.py#L72
Thank you

It's just not been considered. I'm in the middle of something else right now, so I won´t be able to implement a way to optionally track the tag instead of the main branch only today, but that would be a good addition.

authors: Rafiot ajoga

repo: ail-project/lacus


text:
Added utils.ipynb

utils.ipynb now contains Queue, FIFOQueue and PriorityQueue

@MrDupin and @SkAdilina : Do we actually require a notebook for utilities? We use notebooks to explain and visualize various ideas and concepts of AI whereas utilities help us to do so. They do not actually represent a concept. Please correct me if I am wrong!
Thanks!

@apb7 I am definitely not an expert on this, so I won't be able to correct you. However, this is where I saw that Queue is yet to be included in the Notebook, so I went ahead and added it.

Okay, let's wait for @norvig and @MrDupin then :)

Hmm, you are right that it seems like we want a notebook for utils with the Queue in the README. I personally think such a notebook is not necessary, so maybe we want to remove Queue from the list of algorithms, or add a 'Not Needed' mark on the 'Notebook' section.
It is up to @norvig though.

I don't think we need a notebook for utilities, including Queue. I think we can just import the code.

I am afraid since Mr. Norvig said we don't need a notebook for utilities, I have to close this.
Thanks for the work though. Keep it up!

authors: MrDupin SkAdilina apb7 norvig

repo: aimacode/aima-python


text:
enh: Tests

From SDK:

Updated test summary for SDK tests can be found in #32.
Example:

https://github.com/aimclub/ProtoLLM/actions/runs/12460866875/job/34779661451

authors: DRMPN nicl-nno

repo: aimclub/ProtoLLM


text:
ckpt for libero

Dear author,
Thanks for the interesting work. Could you release the 4 ckpt in LIBERO?
Best

Thanks for reaching out!
We are not planning to release the LIBERO models and datasets we used in the paper experiments because of the limited storage capacity on the server, but I encourage you to collect dataset and train LIBERO models using our code by yourself. I will be glad to help you when you use our code.
Best

repo: aiming-lab/GRAPE


text:
Allow function IDs (auth.fid) in owner config

Change summary:

Allow function IDs (auth.fid) in owner config
Add _setOwnerConfig native function for testing
Rename execGasAmount -> extraGasAmount

Related issue: https://github.com/ainblockchain/ain-blockchain/issues/406

This made me realize that we currently do not have a check for owner values (e.g. check if the object's key is either an address or a string starting with 'fid:')! Should we maybe add a todo for that?

This made me realize that we currently do not have a check for owner values (e.g. check if the object's key is either an address or a string starting with 'fid:')! Should we maybe add a todo for that?

Actually, we have a todo for the owner config value sanitization: https://github.com/ainblockchain/ain-blockchain/blob/master/db/index.js#L749
I think the issue can be covered when we add the sanitization logic.
Thanks!

Thanks for the review. Now being merged..

authors: liayoo platfowner

repo: ainblockchain/ain-blockchain


text:
Make consensusStatus more concise.

For smaller peer node info in tracker server.
Before:
{
  ...
  consensusStatus: {
    consensus; { health, status, epoch },
    blockPool: { ... },
    longestNotarizedChainTips: [ ... ]
  },
  ...
}

After:
{
  ...
  consensusStatus: {
    health: true,
    status: 1,
    epoch: 123,
    longestNotarizedChainTipsSize: 2
  },
  ...
}

Would it be just okay with only epoch without block number?

@platfowner Thanks for the review! It's the current epoch, but that reminded me to add lastBlock's epoch to the lastBlock field of node status info 🙂


text:
Enable jump to source in docs

Hi,
This enables jumping to the source code in the docs.
wdyt
example of [source] link:

I use this option in dnspython and think this is a nice thing.

authors: jgarte rthalley

repo: aiortc/aioquic


text:
Metamask support

@vol4tim сделай, если это возможно, чтобы пользователь с текущей версией DApp Aira мог работать через плагин Metamask.

Возможно все заработает, если исправить #2.

authors: akru ensrationis

repo: airalab/aira


text:
Test Cases and code coverage

a

Issue resolved. Commit ID: 16e1aab27abe3b48668da97d108f154f00b77377

repo: airavata-courses/terra


text:
Bk/partial month visibility

Details
This PR adds in partial boundary month visibility - an option available for vertical-layout calendars.

To do this, the MonthsLayout.vertical enum case has been changed so that it takes an instance of VerticalMonthsLayoutOptions. This new type holds the pinDaysOfWeekToTop and the newly introduced alwaysShowCompleteBoundaryMonths properties.
The existing case's definition has been marked as deprecated:

Because the public API has been expanded, and an existing API marked as deprecated, this warrants a bump to 1.1.0.
Related Issue
N/A
Motivation and Context
This adds in a feature that Airbnb needed, and would also be useful to other developers.
How Has This Been Tested
Simulator, XCTests
Types of changes

[x] Docs change / refactoring / dependency upgrade
[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist

[x] My code follows the code style of this project.
[x] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.

@brynbodayle thanks for the review! latest commit makes the demo VC switch between two data sources, one for horizontal one for vertical, depending on which segmented control option is selected.

repo: airbnb/HorizonCalendar


text:
TriggerDagRunOperator - How do you pass state to the Python Callable

Does anyone have an example how to use the payload with TriggerDagRunOperator?
How can I get the payload on triggered dag?
Can someone provide and example?
I was looking at #1010, and prefer to open a new issue.
I imagine it could better separate the issues.

Hi!
Good question and the answer is that it is not exposed currently in any useful way to allow setting it : https://github.com/airbnb/airflow/blob/master/airflow/operators/dagrun_operator.py#L46
I don't it is needed for most needs.
from airflow import DAG, utils
from airflow.operators import *
from datetime import date, datetime, time, timedelta

def foo(context, dag_run_obj):
    print "INSIDE FOO = {}".format(context['params']['passed_by_me'])
    if True:
        return dag_run_obj

dag = DAG(dag_id='test_trigger_dag_run_for_Sid_1',
          default_args={"owner" : "me",
                        "start_date":datetime.now()},
          schedule_interval='*/1 * * * *')

trigger = TriggerDagRunOperator(task_id='test_trigger_dagrun',
                                trigger_dag_id="simple_dummy_dag_v1",
                                python_callable=foo,
                                params={'passed_by_me':1},
                                dag=dag)

If you want to pass some state to the python callable via the TriggerDagRunOperator, just follow the example above.

Excuse me if I am being presumptuous about your needs. I will close this for now, but if you need something else, you can ping me gitter.

@r39132 Thanks for the response.
I dont think I made me clear. Imagine that I have a DAGS that trigger other DAG. So DAG1, DAG2 and DAG3 can trigger DAG4 using TriggerDagRunOperator.
Every DAG that triggers DAG4 will pass some parameters and I would like to get this parameters on DAG4.
Am I clear?
Thansk again!!!

Read https://www.linkedin.com/pulse/airflow-lesson-1-triggerdagrunoperator-siddharth-anand?trk=pulse_spock-articles
And look at the examples i checked in yesterday.
https://github.com/airbnb/airflow/blob/master/airflow/example_dags/example_trigger_target_dag.py
kwargs['dag_run'].conf['message']

If this does not make sense, then ping me https://gitter.im/airbnb/airflow

Currently, you need to use a python operator to access this data, but then you can use xcom to push that data around within the dag.

Since it's in the context, you can also reference it within a template {{ dag_run.conf['foo'] }}, I'm adding that to the example.

https://github.com/airbnb/airflow/commit/2a3e526a30146abc3bb3af36a04ab8b24b48eb76

A related use-case is to trigger a dag-run from the command line, with a particular configuration.  We have achieved this by copying the creation of a DagRun object of the TriggerDagRunOpeartor, into a stand-alone python script.
Would it make sense to expose the creation of DagRun's in some method?
The code I have had to copy is:
def CreateDagRun(args):

    dict_args = vars(args)
    session = settings.Session()
    dr = DagRun(
        dag_id=args.dag_id,
        run_id=args.run_id,
        conf=dict_args,
        external_trigger=True)
    logging.info("Created DagRun {} with parameters: {}".format(dr, dict_args))
    session.add(dr)
    session.commit()
    session.close()

where args is an argpase derived set of objects.  Some thought should be given to how the arguments are exposed.

Great question and a great use-case!

@BradHolmes This is now supported in the CLI itself thanks to @mistercrunch
This is also documented on https://www.linkedin.com/pulse/airflow-lesson-1-triggerdagrunoperator-siddharth-anand

Super!  Thanks for the fix, and for the excellent write-up.

authors: BradHolmes mistercrunch pedrorjbr r39132

repo: airbnb/airflow


text:
Add gcloud-based GCSHook

A GCSHook based on the gcloud library, analogous to the S3Hook in the main airflow package.
see conversation in #1109
The file itself lives in contrib/gcloud/ to clearly identify it as different from the current GCSHook.

follows #1118

Could you make it so we can specify the service account from the JSON? We actually run Airflow with multiple service accounts per-hook to get fine-grained permissions. Setting it at the environment variable level doesn't work well with this.

What do you think about migrating the GCS operators to use new hook as part of this?

@criccomini regarding service accounts it should work -- this Hook looks for a "keyfile_path"  in the airflow connection to identify a json service account key. I think there's similar extra parameter for the other GCS Hook. However this one uses json and I think the other one uses p12 if I remember correctly. I am going to make a change so you can pass either a json OR a p12 file to this hook, so you could reuse the same GCS connections.

Ah, got it. Missed that. Awesome. Motivation to switch to json. :) We're still on the deprecated p12's for the most part.

No problem, will support both! :) One sec.

@criccomini I think this will now allow you to reuse your existing Airflow connections, but please give it a shot to be sure.

@criccomini I think this will now allow you to reuse your existing Airflow connections, but please give it a shot to be sure.

Thought: perhaps add backwards-compatible APIs so that the existing GCS operators can work with your new hooks?

I think that's the cleanest approach -- let me see how easily I can make the signatures match.

@criccomini I'm feeling pretty good about this! the latest one should have full signature compatibility with the previous hook, both at initialization and for the download and upload methods. Also full support for scopes, which we didn't have before (though note scopes require passing key_path either in the connection or at initialization).

...except for "delegate_to". I'm not familiar with this, unfortunately.

@jlowin is this ready for another round of reviews?

@criccomini yes

I'm going to merge this in. I think that it will be safe to assume that a GCP connection type should be treated as BQ in data profiler.

authors: criccomini jlowin


text:
caravel 0.8.9

pip install caravel==0.8.9
Collecting caravel==0.8.9
Could not find a version that satisfies the requirement caravel==0.8.9 (from versions: 0.8.4, 0.8.5, 0.8.6, 0.8.7, 0.8.8)
No matching distribution found for caravel==0.8.9

well, I guess the latest release is 0.8.8 so no 0.8.9 tag is existing - i guess you wanna try latest or dev-master

I do see tag 0.8.9 here https://github.com/airbnb/caravel/tags

I see 0.8.9 tag here: https://github.com/airbnb/caravel/tags

yes you are right ...! sorry - didn't saw that before!

@sid88in having a tag in git does not mean having a package for the same version uploaded to pypi :)
Looks like 0.8.9 has been uploaded so you can close this: https://pypi.python.org/pypi/caravel

Yay! cool didn't know that :)

authors: cooldudehackcode philippfrenzel sid88in xrmx

repo: airbnb/caravel


text:
[Jetpack Compose] Strange behavior for TextField when using setState to update state

I'm not sure if this is compose bug or mavericks. I decide to post here firstly.
So when I'm using setState in onTextChange  soft keyboard have a strange behavior.

On first field type long text
Press delete button on keyboard
Observe behaviour during delete

https://drive.google.com/file/d/18l-l768rR_h9BhrOsCDlLv8yGrK2g06S/view
When I'm using mutableState or MutableStateFlow, everything works.
code:
class BugActivity : FragmentActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        val fragment = FragmentContainerView(this).apply {
            id = R.id.content
        }
        setContentView(fragment)

        supportFragmentManager.commit {
            add(fragment.id, BugFragment())
        }

    }

}

class BugFragment : Fragment(), MavericksState {

    override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
        return ComposeView(requireContext()).apply {
            setContent {
                val bugViewModel = mavericksViewModel<BugViewModel, BugState>()
                val text by bugViewModel.collectAsState(BugState::text)
                val works by bugViewModel.works
                val works2 by bugViewModel.works2.collectAsState()
                Column(modifier = Modifier.background(Color.Red)) {
                    TextField(
                        value = text,
                        onValueChange = { bugViewModel.onTextChange(it) },
                        modifier = Modifier.fillMaxWidth()
                    )
                    Spacer(Modifier.height(16.dp))
                    TextField(
                        value = works,
                        onValueChange = { bugViewModel.onTextChange2(it) },
                        modifier = Modifier.fillMaxWidth())
                    Spacer(Modifier.height(16.dp))
                    TextField(
                        value = works2,
                        onValueChange = { bugViewModel.onTextChange3(it) },
                        modifier = Modifier.fillMaxWidth())
                    Spacer(Modifier.height(16.dp))
                }

            }
        }
    }
}

class BugViewModel(initialState: BugState) : MavericksViewModel<BugState>(initialState) {

    val works = mutableStateOf("")
    val works2 = MutableStateFlow("")

    fun onTextChange(newText: String) = setState {
        copy(text = newText)
    }

    fun onTextChange2(newText: String) {
        works.value = newText
    }

    fun onTextChange3(newText: String) {
        works2.value = newText
    }
}

data class BugState(val text: String = "") : MavericksState`

I believe this is the same issue as #455 . It's caused by Compose being unable to deal with the slight value-setting delay that Mavericks can introduce.

I believe this is the same issue as #455 . It's caused by Compose being unable to deal with the slight value-setting delay that Mavericks can introduce.

Yep It's related. I close this issue.

repo: airbnb/mavericks