[feature request] optional history recording for oneshot modes

This is a continuation of the discussion in #111 (localized hint mode).
setup and usage report
I have been using quadrant hint mode via the --query option (called by keyd via command()). Actually, for me it is much more efficient than using both plain hint mode and also two-step hint mode, and I'm sure that other people will have the same experience. Again, for reference in case others read this, here is the functionality:
I've bound a “modifier” (caps lock and tab)  plus one of five keys under my right hand (j, k, i, o, l on QWERTY to be precise) to start hint mode localized to one of the four quadrants of the screen or the center of the screen. Center here means cutting off 25% of total width on top, bottom, left and right, a quadrant extends 60% of total width and length, starting from one of the four corners of the screen (so that there is some overlap with the other quadrants, preventing one to think about which quadrant to choose for points of interest near the corner). I did the same with another modifier, which automatically clicks after selection. Due to the power of keyd, both modifiers serve a double functionality depending on whether they are held or tapped, so that there is no loss of tab key functionality. (caps lock is completely repurposed as usual to activate a keyd layer). Starting hint mode localized means calling warpd using the --query option with a predefined hint set fed into it by an external script via keyd's command() functionality.
For my resolution, this has eliminated the need to do any pointer adjustments after choosing a hint in at least 95% of use cases (the other 5% typically require such precise pointer movements that normal mode or an external mouse is necessary anyway), while at the same time slightly reducing the length of hint_chars. For me, this is now the holy grail of pointer movement.
actual feature request
Selections done via the above functionality are not recorded into history. I'm actually missing this functionality quite a lot as I have another hotkey to start warpd's history mode, which is very useful for webforms, gui applications etc. where you often have to click the same spot repeatedly. It would be nice if there was an option to record to history in any of the oneshot modes (not only --query, but also --hint, --hint2, --normal and --grid, with the latter four only recording after a click of course). I realize that this would require keyd to read/write the history file much more frequently, but given the usefulness of this feature it's a reasonable price to pay. Alternatively, one could think about implementing some sort of IPC functionality, so that keyd in oneshot mode could first try to tell a running keyd instance to record to history before writing to the history file, or even start the requested mode directly from the running instance.

Currently, the behaviour is not consistent, as --query exits immediately, while the other modes always enter normal mode after selection.

This is by design, as it allows --query to be used by scripts which may just want to query a set of coordinates.
If the user wishes to enter a mode after selecting a hint it is trivial to bold on another invocation with the desired mode flag.
E.G:
warpd --query < hints ; warpd --normal.

simply exit after selection and indicate via the exit code whether warping was cancelled. Then a wrapper script can decide independently what to do next, for example starting keyd --normal if normal mode is desired or do some clicking.

The 'oneshot' flags are intended to be used to launch warpd in a daemonless way, but still facilitate a full movement session. This was originally intended for wayland users, but is incidentally useful for scripting. In retrospect, 'oneshot' was probably a bad name.
The latest commit will use the oneshot button used to terminate warpd as the exit code. Paired with '-c' it should be possible to achieved what you want.

To enable history recording for scripts, one could add --click-left and --click-right options, which make warpd click, record to history and exit immediately.

+1. I will add this shortly.

This level of scriptability would also make the previsioned keyd merge obsolete from a functional point of view, as everything could then be achieved via scripts called by keyd's command() action.

It would still have some advantages (particularly on wayland). Though it is currently on the backburner. 'merge' is probably the wrong word, as it will most likely end up being a separate implementation consisting of a subsets of warpd's most useful features.

With respect to your second request my original suggestion was to pass in a set of custom oneshot bindings using -c but that doesn't cover all modes and can be quite cumbersome.
After some reflection I've added some additional flags which should allow you to do most of what you have described in this issue. They should be available in the latest commit.


fix(cleanup): fix cleanup job to run partprobe command only on disk types.

Why is this PR required? What issue does it fix?:
cleanup job fails on partitions, because the partprobe command fails with invalid argument error.
What this PR does?:
Fix the cleanup script to run partprobe only on blockdevices having deviceType as disk
Does this PR require any upgrade changes?:
No
If the changes in this PR are manually verified, list down the scenarios covered::

claimed a sparse blockdevice, unclaimed and wiped it
claimed a whole disk for cstor, unclaimed and wiped it
claimed a single partition for cstor, unclaimed and cleaned it up.
claimed an LVM device for cstor, unclaimed and wiped it.

Any additional information for your reviewer? :
Mention if this PR is part of any design or a continuation of previous PRs
Continuation of #463
Checklist:

[ ] Fixes #
[x] PR Title follows the convention of  <type>(<scope>): <subject>
[ ] Has the change log section been updated?
[ ] Commit has unit tests
[ ] Commit has integration tests
[ ] (Optional) Are upgrade changes included in this PR? If not, mention the issue/PR to track:
[ ] (Optional) If documentation changes are required, which issue on https://github.com/openebs/openebs-docs is used to track them:

Codecov Report

Merging #469 into master will increase coverage by 0.21%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #469      +/-   ##
==========================================
+ Coverage   42.68%   42.90%   +0.21%
==========================================
  Files          71       71
  Lines        3228     3228
==========================================
+ Hits         1378     1385       +7
+ Misses       1740     1735       -5
+ Partials      110      108       -2

Impacted Files
Coverage Δ

cmd/ndm_daemonset/probe/udevprobe.go
59.74% <0.00%> (+2.59%)
:arrow_up:

cmd/ndm_daemonset/probe/eventhandler.go
48.97% <0.00%> (+6.12%)
:arrow_up:

Continue to review full report at Codecov.

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

did we test the lvm partition also? Claimed that for cstor and did the cleanup?

yes. @pawanpraka1  Tested with partitions on lvm also.


Update golangci-lint.yml

all checks passed 👍

@RANJITHROSAN17 different error but still fails https://github.com/golang-cafe/job-board/actions/runs/4871651071/jobs/8688870807?pr=120


Unable to login with latest Shaarli

Hi @kalvn,
I've updated my Shaarli to the latest master commit, and it seems somewhere along the months passed by, there is something that broke your superb theme :(
shaarli    | 2020/03/18 05:13:56 [error] 10#10: *74 FastCGI sent in stderr: "PHP message: PHP Notice:  Undefined variable: user_can_login in /var/www/shaarli/tmp/loginform.025e4ef3c23e9ff6918934cf9db5d80e.rtpl.php on line 5
shaarli    | PHP message: PHP Notice:  Undefined variable: user_can_login in /var/www/shaarli/tmp/loginform.025e4ef3c23e9ff6918934cf9db5d80e.rtpl.php on line 22" while reading response header from upstream, client: <IP_ADDRESS>, server: , request: "GET /login? HTTP/1.1", upstream: "fastcgi://unix:/var/run/php-fpm.sock:", host: "shaarli.local", referrer: "https://shaarli.local/login?"

The theme displays "You have been banned after too many failed login attempts. Try again later." but there is no ipbans.php at all, and I can see the above PHP log in Docker. The Shaarlier Android app also can't login because of this.

It's been a while I didn't work on it, and you're right, there was an update of the login page template in January on Shaarli. I'll try to work on a fix this week. In the meantime, I recommend sticking to v0.11.1 of Shaarli instead of the last master.

Thank you! Yes, I reverted back to my previous working docker image after the rebuild.

Hi @kalvn , I've seen the new release, and I'd like to know if it contains a fix to this issue as well?
https://github.com/kalvn/Shaarli-Material/releases/tag/v0.11.0

Hello @immanuelfodor , no it doesn't, because version 0.11.0 of Shaarli didn't have the issue.
But I'm now working on catching up with latest commits on master of Shaarli so the last commits on dev branch do fix the issue. Though I suggest to wait that I merge dev branch into master so that you get all updates and possible fixes at once.

Okay, thanks!

I just merged my dev branch with master. Feel free to use the master branch now. It may not be perfectly stable though.

Thank you, I can confirm now it works fine with the latest master; which is https://github.com/shaarli/Shaarli/commit/810f0f6c96b6d26e22164027185c5996b425816c as of now.


Netscript 1.0 Autocomplete

Autocomplete .script code.

so sad, i was really looking forward to this


Eth dev

I'm trying to make sure that I'm able to stay on task and create and build together let me know what I'm able to actually add and contribute because I have been trying to reach out and make sure that I'm able to continue to bridge in real life thank you

well we cant merge this @Jcauley.. What is it you are trying to do?

well build and learn how i just didn't want to click on any thing  because what was happening with open sea


[feature request]Tag search by kind

All kinds of tags are considered as having the same priority, and sometimes it's difficult to find struct declaration in big projects. For example, in Linux kernel we have many patterns like:
struct xxx {
struct file *file;
};
When someone wants to jump to "struct file" declarations, all the above patterns are contained in ":ts file" results. There are 83 declaration of file, while "S" kind is lost somewhere in the middle of them, and it's not easy to find it.
Could you please consider to implement some way to jump to specific kind of tags only? Say, after typing ":tsS file" the results will contain only "struct file" declarations, after ":tsM main" there will be only members of structures, etc. Thanks!

See #2871

There is already work in progress. Fantastic. Thanks!

Since there is already work ongoing and this issue doesn't contain extra info, let's close this (even though the feature hasn't been implemented yet).


Unable to use .glob option

As per docs :
sveld({
  input: "./src/index.js",
  glob: true,
  markdown: true,
  markdownOptions: {
    onAppend: (type, document, components) => {
      if (type === "h1")
        document.append("quote", `${components.size} components exported from ${pkg.name}@${pkg.version}.`);
    },
  },
  json: true,
  jsonOptions: {
    outFile: "docs/src/COMPONENT_API.json",
  },
});

But
https://github.com/carbon-design-system/sveld/blob/d502bdb80b199451290aef8d074ec5e870d28a40/src/rollup-plugin.ts#L61
  const dir = fs.lstatSync(input).isFile() ? path.dirname(input) : input;
  const entry = fs.readFileSync(input, "utf-8");

throws error as fs.readFileSync fails on a directory

Thanks for reporting.
As a workaround, are you able to omit the input property and have the Svelte entry be inferred from the package.json.
See the build script used by carbon-components-svelte: https://github.com/carbon-design-system/carbon-components-svelte/blob/c87196c16b344e041cf002f0d51a7c738eacb5d0/scripts/build-docs.js


need to remember wrong submissions for analysis

just record what they wrote so we can "play it back" later during debrief

runner now holds them in reviewed arraylist


Add configuration for jdk8u, jdk11u, and jdk17u on riscv64

The backports of Linux/RISC-V to JDK 8, 11, and 17 are in progress. To get a head's start on building and testing these backports, we want to special-case these repositories.

As an additional note, sice we currently don't have a suitable bootstrap JDK for RISC-V for JDK8+11 we will need to look at how to run 8 using this script (We have Bisheng or OpenJ9 builds for 11 that we can use)

For bootstraping, can we provide a one-off for the first ever build?

For bootstraping, can we provide a one-off for the first ever build?

Yep, that's the right thing to do IMHO

/thaw

@sxa are the changes good to you?


Server

Okay this works now (at least locally on Linux) :)
Have a play!

Awesome! Just tried it!

And it works okay so far? :) It's really rough; but it's a start!

Yep it works. One question: you listen to changes on the content directory, right?

Yes; as per how FileWatcher() is configured.

Ahh ok just saw it in server.py . Thanks for the support! :+1:

No problems! Coding up worker/subprocess now :)


Use ccm run cqlsh

7681edb is the meat of this PR. TestCqlsh uses a custom run_cqlsh method that can return the stdout and stderr output from the cqlsh command. Since https://github.com/pcmanus/ccm/pull/264 was merged, this is no longer necessary. This commit removes the function and replaces all instances of its being called with ccmlib.Node.run_cqlsh.
The other commits are more cleanup-y cleanup: they organize imports with isort, remove TestCqlsh.__init__ (which had no effect), correct some indentation that was too deep, and :fireworks: add Doxygen docstrings to the test methods in TestCqlsh :fireworks:.
The tests still pass locally on trunk and cassandra-2.{2,1,0}

Can you check if/how much this works on windows?

Other than that, I'm +1

I don't expect problems, but I've just asked for a Windows license to test locally. I'll let you know when I've tested with it.

Something about the implementation of run_cqlsh in here is preventing some tests from failing on Windows (specifically tracing_from_system_traces_test and test_eat_glass). I don't know why. Until ccm's run_cqlsh works properly on Windows, let's not merge this. Shall I close the PR until then, or can we leave it open?

Better to leave it open I think, so we feel bad for not fixing it.

not sure this relates at all, but Josh made a change for the json tests that had to deal with windows line endings. I mention that because I used some code from cqlsh_tests.py when I did the json stuff.
https://github.com/riptano/cassandra-dtest/pull/312/files

I'm gonna go ahead and close this. We have an internal ticket to work on this already.


Autocompletion stopped working with  commit 2581ff1

Commit  2581ff1 brokes autocompletion (at least for included files).
Here is my patch to fix that issue:
---
 zsh-ssh.zsh | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/zsh-ssh.zsh b/zsh-ssh.zsh
index 342d84d..9a63df8 100644
--- a/zsh-ssh.zsh
+++ b/zsh-ssh.zsh
@@ -8,17 +8,18 @@
 _ssh-host-list() {
   local ssh_config host_list

-  ssh_config=$(command awk '
+
+  ssh_config=$(command awk -v PREFIX=$HOME/.ssh/ '
     {
-      if (NF == 2 && tolower($1) == "include")
-        {
-          cmd = "sed -s '\''$G'\'' " $2 " 2> /dev/null"
-          # print cmd
-          while ( (cmd | getline line) > 0 ) {
-            print line
-          }
-          close($2)
+      if (NF == 2 && tolower($1) == "include") {
+        file = PREFIX $2
+        cmd = "sed -s '\''$G'\'' " file " "
+        # print cmd
+        while ( (cmd | getline line) > 0 ) {
+          print line
         }
+        close(file)
+      }
       else {
         print
       }
--
2.40.0

Commit 2581ff1 broke relative path references to "include".
Your patch fixed relative path references, but broke absolute path references. I think we need a better solution to this problem.

try https://github.com/sunlei/zsh-ssh/commit/bc48f6cdfa9cddf0e8ef4379a7f7ec743bbb44e3.

Works for me. Thanks!

@sunlei I found an edge case where autocompletion doesn't work if there is an Include path with wildcards but no matches are found.
My use case is that I have another python tool to create / delete VMs and when created, an ssh_config file is generated per project in the tool's directory, so something like:
Include ~/tools/overlord/projects/*/ssh_configs/*
However, if I have no current projects then I get errors when I try to autocomplete because no matches are found for the above wildcard.
I think I found a fix which is to include the following in _parse_config_file by adding the following:
# disable no match errors for Include with wildcard statements that don't have matches
unsetopt nomatch

This temporarily disables the error message from the attempt at glob expansion and proceeds to auto-complete based on the rest of the SSH config.
I thought it's too trivial to submit a PR so I'm just mentioning it here. On older versions of this plugin (not sure which ones), this wasn't a problem.


mkdir fails with non-normalized path

Node version (or tell us if you're using electron or some other framework): v6.8.0
ShellJS version (the most recent version/Github branch you see the bug on): 0.7.5
Operating system: Mac
Description of the bug: Shell js exits with Error: EEXIST: file already exists when mkdir path is not normalized.  You cannot trap this with a try/catch block.
Example ShellJS command to reproduce the error:
shelljs = require('shelljs');
shelljs.mkdir('-p', 'asdf/./');

Expected result is that no error should be thrown and certainly the process should not terminate.  '-p' flag should not fail for any existing path or part of path.

@webOS101 Thanks for reporting. It looks like most of our utilities should probably normalize paths before using them. I'll work on a fix for this tonight using path.resolve().
It looks to me like most commands would want paths to be resolved before handling them (ln() is an example of where this is not the case). I'll wrap this functionality as a default part of common.wrap (ln() will opt-out), although this probably only affects mkdir -p, cp -r, and rm -r, and ls -R (anything recursive).
To address your second concern, where the process dies, this will be fixed when we release v0.8. See #483.


SAK-42252 Messages broken on student view

 Here is an overview of what got changed by this pull request:

Issues
======
+ Solved 3
- Added 7

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Issues
======
+ Solved 3
- Added 2

See the complete overview on Codacy


Feature or doc request

Hi I didn't fine a way to specify the default strategy for kpt update in the kptfile, is this possible? If so please how, I found nothing here https://googlecontainertools.github.io/kpt/api-reference/kptfile/
And if not can we add this feature please if no strategy is specified in the command line.

@yelhouti You are correct that there is no way to set this on a Kpt package today. I agree that it would be useful if this was part of the Kptfile so it wouldn't need to be specified on the command line every time.

@mortent thanks for adding this to the backlog, I see that there is a whole one for config as data which sounds great. Good luck :)

Closing this since we addressed this in current version of kpt.


Disable rules via CLI option?

I'm unable to figure out how to load a custom ruleset within the context of my global composer instance. I'm unsure where to place the file, exactly how to get composer to see the file, how to reference it, etc.
Is it possible that there could be a way to disable specific rules via the command line?
I'm using twigcs within Craft CMS, and pascalCase is commonly used throughout our code for variable naming, and even Craft's internal templating, thus the LowerCaseVariable is a rule we'd like to exclude.

Hello,
Concerning the ability to disable a rule with CLI option, it's not possible, and I don't think it would be that useful in comparison of custom rulesets.
At the moment it is only possible to use a custom ruleset when twigcs and the ruleset share the same autoloader. This leaves two options :

Adding twigcs as a dependency of your project and the ruleset class in the sources.
Making a package of your ruleset and install it globally.

I would like to improve on that in the future but I've not yet asked the newly formed community about what they'd want to see.

Possible solution with custom RulesetBuilder:
<?php
// Official.php

namespace FriendsOfTwig\Twigcs\Ruleset;

use FriendsOfTwig\Twigcs\RegEngine\RulesetBuilder;
use FriendsOfTwig\Twigcs\RegEngine\RulesetConfigurator;
use FriendsOfTwig\Twigcs\Rule;
use FriendsOfTwig\Twigcs\Validator\Violation;

/**
 * Custom twigcs ruleset, based on
 * dev/vendor/friendsoftwig/twigcs/src/Ruleset/Official.php
 *
 * @author dalekseev
 */
class Official implements RulesetInterface {

  /**
   * {@inheritdoc}
   */
  public function getRules() {

    $configurator = new RulesetConfigurator();
    $config = $configurator->getProcessedConfiguration();
    $builder = new RulesetBuilder($configurator);
    $ruleset = $builder->build();

    /*
     * Allows set statement to start on next line (drupal 8 twig style):
     * {%
     *   set classes = [
     *     'node',
     *     'node--type-' ~ node.bundle|clean_class,
     *     node.isPromoted() ? 'node--promoted',
     *     node.isSticky() ? 'node--sticky',
     *     not node.isPublished() ? 'node--unpublished',
     *     view_mode ? 'node--view-mode-' ~ view_mode|clean_class,
     *   ]
     * %}
     */
    foreach ($ruleset['expr'] as $key => $item) {
      if ($item && $item[1] && $item[1] == '<➀set➊@➋=➌$➁>') {
        $newSetRule['expr'][$key] = [
          $item[0],
          $item[1],
          $builder
            ->handle()
            ->enforceSpaceOrLineBreak('➀', $config['tag']['before'], 'A tag statement should start with %quantity% space(s).')
            ->enforceSpaceOrLineBreak('➁', $config['tag']['after'], 'A tag statement should end with %quantity% space(s).')
            ->delegate('$', 'expr')
            ->enforceSize('➊', $config['set']['after_set'], 'There should be %quantity% space(s) after the "set".')
            ->enforceSize('➋', $config['set']['after_var_name'], 'There should be %quantity% space(s) before the "=".')
            ->enforceSize('➌', $config['set']['after_equal'], 'There should be %quantity% space(s) after the "=".'),
        ];
        break;
      }
    }
    $new_ruleset = $newSetRule ? array_replace_recursive($ruleset, $newSetRule) : $ruleset;

    return [
      new Rule\LowerCaseVariable(Violation::SEVERITY_ERROR),
      new Rule\RegEngineRule(Violation::SEVERITY_ERROR, $new_ruleset),
      new Rule\TrailingSpace(Violation::SEVERITY_ERROR),
      new Rule\UnusedMacro(Violation::SEVERITY_WARNING),
      new Rule\UnusedVariable(Violation::SEVERITY_WARNING),
    ];
  }
}

Just put into your composer.json the follows to use it:
    "autoload": {
        "files": [
            "src/Ruleset/Official.php"
        ]
    },

@chasegiunta I would like having this cli options to (i use phar).
For now a solution if you use phar is relying on the output result and combine grep/sed to exclude rules. Example to exclude sapce before after pipe and lower case rule:
php twigcs.phar path/to/folder | (! grep -v '|' ) | (! grep -v 'lower case' ) | sed '/\.twig/{$!N;/\n.*\.twig/!P;D}' | sed '/\.twig/{$!N;/\n.* found/!P;D}' | (! grep -v 'violation(s) found' )

If output is empty no errors, instead errors.
It is somehow hacky, and not not usable by IDE, but for CI or precommit hook, it can do the job.

Closing this as we can now have file based configuration with ability to use custom rulesets on a per-file basis. (see #148)


visual design tweaks

Added new icon and some css styling on pop-up

Oh, nice!  Just spotted this.  Would you mind opening a PR on directly https://github.com/wikimedia/webextension-readinglists instead?  I'll look it over and merge in the morning.

Actually, on second thought, (a) that would be tough since there's nothing on the wikimedia master yet except a license, and (b) it might be that if I merge this here your commit will be added to the main PR in review there.  I'm about to pack it in for the night, though... will look first thing tomorrow.

Looks great, thanks for the PR!


8bitdo NeoGeo pad shoulder buttons not detected

BlueRetro firmware version
1.9.2
BlueRetro firmware specification
HW1
BlueRetro firmware variant
Universal
BlueRetro hardware type
External adapter with detachable cord
Manufacturer
Self
System used
Sony PlayStation 1
Bluetooth controller brand & name
8bitdo NeoGeo Pad
What is problem? (only list ONE problem per report)
Left and Right shoulder buttons are being ignored with this controller.  This was working in firmware version 1.8.4 but starting in 1.9.0 and is still happening in 1.9.2
What did you expect to happen?
When it was working in version 1.8.4 the left and right shoulder buttons would trigger the same as L1 and R1 on a 8bitdo SN30 pro+ controller.
Attach files like logs or Bluetooth traces here
No response

I goal was to have them on the main trigger L2/R2 but I didn't test it properly.
That should be fixed in this build:
https://github.com/darthcloud/BlueRetro/actions/runs/8609240832

Fixed in v24.04


[QUESTION] Mapping data return blank CSV

Prerequisites

[x] Have read and understood: https://github.com/Maatwebsite/Laravel-Excel/blob/3.1/.github/SUPPORT.md
[x] Checked if your Laravel Excel version is still supported: https://docs.laravel-excel.com/3.1/getting-started/support.html#supported-versions
[x] Checked that your question isn't already asked before.
[x] Filled in the entire issue template

Versions

PHP version: 7.4
Laravel version: 7.x
Package version: 3.1

Description

I have export functionality and currently my data is exporting but i want to add related table data into my csv instead of just id.
sample
This is what I get currently

id-name-core_id-created_at-updated_at

What I want to get

id-name-core_name-created_at-updated_at

Additional Information
Export class
<?php

namespace App\Exports;

use App\CableAlokasi;
use Maatwebsite\Excel\Excel;
use Maatwebsite\Excel\Concerns\FromCollection;
use Illuminate\Contracts\Support\Responsable;
use Maatwebsite\Excel\Concerns\WithHeadings;
use Maatwebsite\Excel\Concerns\Exportable;

// added
use Maatwebsite\Excel\Concerns\WithMapping;

class CableAlokasiExport implements WithMapping
{
    use Exportable;

    private $fileName = 'Alokasies.csv';

    /**
    * Optional Writer Type
    */
    private $writerType = Excel::CSV;

    /**
    * Optional headers
    */
    private $headers = [
        'Content-Type' => 'text/csv',
    ];

    // added for mapping data
    public function map($alokasi): array
    {
        return [
            $alokasi->id,
            $alokasi->core->name,
            $alokasi->name,
            $alokasi->created_at,
            $alokasi->updated_at,
        ];
    }
    //

    public function headings(): array
    {
        return [
            '#',
            'core',
            'name',
            'created_at',
            'updated_at',
        ];
    }

    public function collection()
    {
        return CableAlokasi::all();
    }
}

Controller
public function export(Request $request)
{
    $filename = Carbon::now()->format('Ymdhms').'-Alokasies.xlsx';
    Excel::store(new CableAlokasiExport, $filename);
    $fullPath = url('exports', $filename);

    return response()->json([
        'data' => $fullPath,
        'message' => 'Alokasies are successfully exported.'
    ], 200);
}

Any idea?

Solved
Some of my data core_id columns were null that's why it couldn't export data properly.


[BUG?] Batch dimension mismatch in a custom env

I'm trying to create my own environment, and keep getting dimension mismatch for batch dimension. Failure happens within env.fake_tensordict(), which is often called by the framework (e.g. by Collectors).
Minimal example:
class MiniEnv(EnvBase):
    def __init__(self):
        super().__init__()

        # e.g. a conveyor belt with some values there
        observation_spec = DiscreteTensorSpec(n=3, shape=torch.Size([6]))
        self.observation_spec = CompositeSpec(
            observation=observation_spec, shape=observation_spec.shape
        )
        self.action_spec = OneHotDiscreteTensorSpec(
            2,  # shift left or right
            shape=torch.Size([2]),
        )
        self.reward_spec = UnboundedContinuousTensorSpec(shape=torch.Size([1]))

    def _reset(self, tensordict, *kwargs):
        pass

    def _step(self, tensordict):
        pass

    def _set_seed(self, seed):
        pass

env = MiniEnv()
env.fake_tensordict()

This creates error:
Traceback (most recent call last):
  File "/Users/user/anaconda3/envs/torchrl/lib/python3.9/runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/Users/user/anaconda3/envs/torchrl/lib/python3.9/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/Users/user/projects/kaggle/santa23/environments/mini_env.py", line 38, in <module>
    env.fake_tensordict()
  File "/Users/user/anaconda3/envs/torchrl/lib/python3.9/site-packages/torchrl/envs/common.py", line 2107, in fake_tensordict
    next_output.update(fake_reward)
  File "/Users/user/anaconda3/envs/torchrl/lib/python3.9/site-packages/tensordict/tensordict.py", line 1883, in update
    self.set(key, value, inplace=inplace)
  File "/Users/user/anaconda3/envs/torchrl/lib/python3.9/site-packages/tensordict/tensordict.py", line 911, in set
    return self._set_tuple(key, item, inplace=inplace, validated=False)
  File "/Users/user/anaconda3/envs/torchrl/lib/python3.9/site-packages/tensordict/tensordict.py", line 4494, in _set_tuple
    return self._set_str(key[0], value, inplace=inplace, validated=validated)
  File "/Users/user/anaconda3/envs/torchrl/lib/python3.9/site-packages/tensordict/tensordict.py", line 4465, in _set_str
    value = self._validate_value(value, check_shape=True)
  File "/Users/user/anaconda3/envs/torchrl/lib/python3.9/site-packages/tensordict/tensordict.py", line 2020, in _validate_value
RuntimeError: batch dimension mismatch, got self.batch_size=torch.Size([6]) and value.shape[:self.batch_dims]=torch.Size([1]) with value tensor([0.])

Equivalent error happens if in my specs, I provide unsqueezed shapes (such as torch.Size([1, N]) or even torch.Size([*self.batch_size, N])).
It seems that calling *spec.zero() creates a TensorDict where batch_size is the whole shape from the spec. Is there a way to avoid that?
System info
Python 3.9.18
torch 2.1.2  (installed via conda)
macOS Sonoma 14.2.1 on M2 macbook pro
torchrl 0.2.1 (installed via pip)
tensordict 0.2.1 (dependency of torchrl)

The error comes from the fact that your observation spec has the same shape as its leaf:
        self.observation_spec = CompositeSpec(
            observation=observation_spec, shape=observation_spec.shape
        )

The observation_spec shape should be the same as the environment batch size:
        self.observation_spec = CompositeSpec(
            observation=observation_spec, shape=[]
        )

You should think of the shape of the CompositeSpec as the batch-size, and the shape of the observation_spec leaf as a shape made of [*batch_size, *feature_size].
Hope that helps!


How to perform 'titl' effect programaticaly without mouse hovering?

Is there any way to run that cool animation without hovering mouse over?

@BumbuKhan nope there is not. Thats not really the purpose of this library. You can just animate the transform values with javascript yourself, there is no need for a library.


Apply SCFilter into live recording

Thank you for this module.
I would like to ask how I can directly apply scfilter into live recording
This is how I setup:

//recorder.previewView = self.previewView // do not set the previewView
recorder.CIImageRenderer = self.scImageView

let filter = SCFilter(CIFilterName: "CIColorControls")
filter.setParameterValue(NSNumber(float: 0.3), forKey: "inputContrast")

self.scImageView.filter = filter

It runs without problem, but the scImageView does not output any frame
I have checked the codes inside SCImageView, it calls the
- (void)setImageBySampleBuffer:(CMSampleBufferRef)sampleBuffer

but the
- (void)drawRect:(CGRect)rect

is never called
Do you have ideas on why it happens?

It seems #182 has this problem covered

I’m using a SCSwipeableFilterView widget. My setup is:
self.filterSwitcherView.refreshAutomaticallyWhenScrolling = FALSE;
self.filterSwitcherView.contentMode = UIViewContentModeScaleAspectFill;

self.filterSwitcherView.filters = @[
                                            [SCFilter emptyFilter],,
                                            [SCFilter filterWithCIFilterName:@"CIPhotoEffectInstant"],
                                            [SCFilter filterWithCIFilterName:@"CIPhotoEffectTonal"]
                                            ];
recorder.CIImageRenderer = self.filterSwitcherView;

This is not working good, it’s slow. Looks a delay while rendering. I don’t know what’s happening.

@ustbenchan See my solution in #182.

@ustbenchan
So sorry that i just see this. That's a terrible hack.
A better way is just like what @xezero  said.
And I solve it with a similar way.


params.Body is required

After upgrading to 1.2.0, file uploading no longer works for me and throws: params.Body is required in my S3 upload logic.
I think it may be related to this commit: https://github.com/graphcool/graphql-yoga/commit/b963504dd586d869e57b101fb3347afc9fab2b59

The commit you refer to was only released in 1.2.2, not in 1.2.0, see here. What version did you upgrade from?

Ah it looks like I was on 1.2.0 before upgrading

Which means you are experiencing this problem in 1.2.2 I suppose?

I guess so – I upgraded graphql-yoga and prisma-binding and encountered the issue, and rolled back the graphql-yoga version as a workaround.

Can you share the code that results in this error? This will be super helpful in understanding what's going on 🙂

@hoodsy did you find a solution? How does it look like? :)

I saw this same error due to buggy app code, so writing this off to error
on my end, not graphql-yoga.
On Feb 11, 2018 4:38 AM, "Nilan Marktanner"<EMAIL_ADDRESS>wrote:

@hoodsy https://github.com/hoodsy did you find a solution? How does it
look like? :)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/graphcool/graphql-yoga/issues/158#issuecomment-364737496,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEQruruFqPqzeVzUF0Kvfn8NzpxoOEvcks5tTrT6gaJpZM4R7Bcz
.


RFE: Make entry name a link

Could the entry name be made a link as a convenience. It could either bring up the settings for the entry or go to the website, whichever seems to make the most sense.

Oh thanks. This is highly needed. Because in big screens the buttons are too small. Perhaps you must make bigger? (i'm in a mac 27" screen) Look the general view. Perhaps you can make the font/views responsive (and bigger texts obviously)


[FLINK-13013][network] Request partitions during InputGate#setup

Before partitions were being requested on first polling/getting next buffer which was causing a couple of issues:

it was a little bit confusing
after first requestPartitions call, this was causing unnecessary synchronisation overhead
this was preventing data notifications to come through and isAvailable() future was always not completed before the first attempt to read the data from the input gate

On top of that, this PR includes a couple of hotfixes, for which please look at the individual commits/commit messages.
Verifying this change
This change is covered by existing unit and integration tests and it also adds a new unit test to add a test coverage for one issue found by ITCase.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no ****/ don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

Thanks for the review. I've rebased the change and merging it now.


cluster-info doesn't print the name of the dns service

$ ./cluster/kubectl.sh cluster-info
Starting cluster using os distro: debian
current-context: "robertbailey-kubernetes_kubernetes"
Running: ./cluster/../cluster/gce/../../cluster/../_output/dockerized/bin/darwin/amd64/kubectl cluster-info
Kubernetes master is running at https://<IP_ADDRESS>
elasticsearch-logging is running at https://<IP_ADDRESS>/api/v1beta3/proxy/namespaces/default/services/elasticsearch-logging
kibana-logging is running at https://<IP_ADDRESS>/api/v1beta3/proxy/namespaces/default/services/kibana-logging
 is running at https://<IP_ADDRESS>/api/v1beta3/proxy/namespaces/default/services/kube-dns

/cc @RichieEscarez @piosz

we should not be using a generic label like "name" for this.  The "name" label has been a source of confusion for many users.  It should, at least, be "kubernetes.io/name" or soemthing more obvious.  I removed this because I had no idea it was being used, I thought it was vestigial.


A method for testing two eithers

So like I want a method that:

takes x : Either<A, B> and y : Either<C, D>
takes f : (A, C) -> R, g : (B, D) -> R and u : R
if x is Left(a), y is Right(c), returns f(a, c)
similarly for g
return u by default

🤔 y is Right(c) : C ? But y has type Either<C, D>

🤔 y is Right(c) : C ? But y has type Either<C, D>

Should be left, my bad


Provide std docker container

For building and running

this is a lib now, not an app so this is less useful


Directory support, Interlacing, and ran through golint

I've just added directory and interlacing support to the 2.5.0 release. Thanks for the suggestions.

👍


allow openSfm accept  proposed ODM  gcp_list.txt with comments. ODM  …

Allow openSfm accept  proposed ODM  gcp_list.txt with comments. ODM   PR #764
Comments will turn gcp_list.txt more flexible. Turn GCP on/off.

That will be more flexible, thanks!


Generate report on Windows after proc.kill('SIGINT')`

Hi,
Thank you for a great tool. I try to use node-clinic  on my Windows 10 machine, but after I try to end my process using CTRL+C, nothing happens, the only process ends, without a report.
I clone node-clinic repo and make npm link to it, and change this line https://github.com/nearform/node-clinic-doctor/blob/master/index.js#L75 into
/*if (os.platform() !== 'win32') */ proc.kill('SIGINT'), to kill process on windows platform using SIGINT signal, and after i press CTRL+C in my command line, process end and report was analyzed.
I saw the comment in the code, but I don't know why, but at the moment it works for me when I use this
 process.once('SIGINT', function () {  proc.kill('SIGINT') })

C:\Projekty\Learn\node-clinic>npm version
{ clinic: '1.0.3',
  npm: '6.1.0',
  ares: '1.10.1-DEV',
  cldr: '32.0',
  http_parser: '2.8.0',
  icu: '60.1',
  modules: '57',
  napi: '3',
  nghttp2: '1.32.0',
  node: '8.11.3',
  openssl: '1.0.2o',
  tz: '2017c',
  unicode: '10.0',
  uv: '1.19.1',
  v8: '6.2.414.54',
  zlib: '1.2.11' }

Thanks a lot for the report. @mafintosh you added this in a PR without further description. Can you outline the issue and do you think we can fix this one way or the other?

@BridgeAR See the comment in the code. We had a lot of issues with the sigint not being propagated on on Windows (the ctrl-c seems to be a special thing). If it works somehow now, I'm fine changing it obvs, but haven't seen this issue personally on windows still.
@lukaszewczak Do you have simple test case we can run to test it ourself?

Hi @mafintosh ,
So I  try to made a fork https://github.com/lukaszewczak/node-clinic-doctor, and put this change in the code (https://github.com/lukaszewczak/node-clinic-doctor/blob/master/index.js#L70)
process.once('SIGINT', function () {
    proc.kill('SIGINT')
 })

And to test it I change two scripts:

cmd-collect-exit.test.js - I removed the code to skip test on Windows and I listen for child process exit event to test if it was killed by SIGINT signal
cmd-collect-exit-sigint.script.js - I removed code `process.once('SIGINT')), because child process cant' capture this signal.

In general child process can't capture the signal on Windows, it is just killed immediately by it, just like in the docs , this is why the previous writen test can not pass.
Windows does not support sending signals, but Node.js offers some emulation with process.kill(),
and subprocess.kill(). Sending signal 0 can be used to test for the existence of a process.
Sending SIGINT, SIGTERM, and SIGKILL cause the unconditional termination of the target process.

But 'SIGINT' from the terminal is supported on all platforms, which is the case in [node-clinic-doctor] (https://github.com/lukaszewczak/node-clinic-doctor/blob/master/index.js#L70) where the code is listening for SIGINT signal on the main process, not a child process.
I hope that my attempt to explain this behavior is quite understandable.

@lukaszewczak - Can you try this again with the latest versions of node clinic and doctor?

Hi @DylanC , I tested with clinic doctor version v5.0.0, and it works! :-). Thank you :-)


Update CI test matrix: Add Django 3.2, drop Python 3.6, Django 3.0

In 3.2 primary_keys behaviour changed a bit:
https://docs.djangoproject.com/en/3.2/releases/3.2/#customizing-type-of-auto-created-primary-keys
This is affecting our tests, need to dig deeper into it.

@amureki can we work around this issue?

@syphar sadly I did not test it yet. So, what we need to validate:

[ ] we can deploy backend with Django 3.2 and django-heroku-connect 0.24.0 (deployments checks are passing and mapping reimported)
[ ] Heroku Connect models are working fine (updating/saving)

We can do this on UAT. If everything looks fine, then we can disable/ignore failing tests for Django 3.2 until there would be a resolution on https://code.djangoproject.com/ticket/32733#ticket

https://code.djangoproject.com/ticket/32733#ticket my patch was accepted and merged to main. It would be released in Django 3.2.4 (so far, it is planned on June 1st, but the date could be moved).

just ran the tests again, in one place I had to remove the abstract=True from a test-model because it is not allowed to create instances of abstract models any more.
Then, a next test failure, where I'm not sure if this another bug in Django, or something we have to fix.
___________________ TestHerokuConnectModelMixin.test_check_sf_object_name ___________________
tests/db/models/test_base.py:251: in test_check_sf_object_name
    errors = MyModel.check()
heroku_connect/db/models/base.py:303: in check
    errors = super().check(**kwargs)
.direnv/python-3.9.4/lib/python3.9/site-packages/django/db/models/base.py:1293: in check
    *cls._check_default_pk(),
.direnv/python-3.9.4/lib/python3.9/site-packages/django/db/models/base.py:1309: in _check_default_pk
    not cls._meta.app_config._is_default_auto_field_overridden
E   AttributeError: 'NoneType' object has no attribute '_is_default_auto_field_overridden'

before I invest time to dig deeper, can anyone already answer the question?

Never mind, I worked around it.

@amirnaeimi for you to review, please :)
( also I'm happy to implement comments by @amureki or @codingjoe , if they have any :) )


[Azure.Monitor.Ingestion] Add IngestionClientBuilderExtensions class

Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

https://github.com/Azure/azure-sdk-for-net/issues/31008

Examples will be added to the Readme in a separate PR

/check-enforcer reset

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.Monitor.Ingestion


CUDA_ERROR_ILLEGAL_ADDRESS, CPU support, TensorFlow bindings, some other changes

Hey!
Thank you for this implementation!
I just wanted to say that we use your implementation and have done some changes, extensions and fixes to it. Unfortunately I don't really have time currently to prepare PRs for the individual changes, at least right now, and we anyway probably stay within our fork (but then I also don't expect that we will really do much further changes now). However, I still wanted to mention that we have done these changes, which are partly probably also interesting to you.
Our fork: https://github.com/rwth-i6/warp-rna
For example, we got a CUDA_ERROR_ILLEGAL_ADDRESS error, due to illegal memory access, reported here: https://github.com/rwth-i6/returnn/issues/1124. I think this was caused when you have cases where S > T. We fixed that now.
Further, we also implemented CPU support, in a somewhat hacky way, by wrapping up the CUDA code with some clever makros, which make it runnable on CPU without CUDA. See here to get an idea how this works.
And we also added TensorFlow bindings.

Hey, Albert! I'm curious why you chose this implementation? Because it is a rare implementation of RNA or because of CUDA warps threads? In any case, I'm glad to see you use this project. I built this mostly as a toy example and do not use it anymore.

Do you know a better RNA implementation? I don't really remember anymore why we took this one.


Improve connection logic

There are a few issues with the current approach:

If flush fails due to a network issue, you are forced to create a new sender... meaning all the messages you have buffered to be flushed get lost.
There's no re-connection logic (automatic or manual) and there's no way to check if the connection is alive.

Actually maybe it's not even a good idea to connect on NewLineSender() init,  as there may be substantial delay between initialization and flushing,  causing the connection to timeout (or disconnect due to any network error) before flush is even called.

v3 shipped HTTP sender which has the automatic retry logic.


Error thrown when a routeID filter is applied to getarrivals and the route is not live

The end user experience appears graceful but this error is being thrown on the requests.
{
"level": 50,
"time":<PHONE_NUMBER>719,
"pid": 15,
"hostname": "<IP_ADDRESS>",
"err": {
"type": "TypeError",
"message": "Cannot read property 'route_id' of undefined",
"stack": "TypeError: Cannot read property 'route_id' of undefined\n    at /var/task/api/fetch.js:44:40\n    at Array.forEach ()\n    at Object.module.exports.fetch_trips (/var/task/api/fetch.js:42:21)\n    at runMicrotasks ()\n    at processTicksAndRejections (internal/process/task_queues.js:95:5)\n    at async /var/task/api/schedule.js:33:23"
},
"msg": "Cannot read property 'route_id' of undefined"
}

the fix is not complete. re-opening.


Sigh throwing an error about invalid device class

Without any changes on our end, Sigh started throwing this error recently
Stack trace:
/Library/Ruby/Gems/2.0.0/gems/spaceship-0.6.1/lib/spaceship/client.rb:240:in `parse_response': {"responseId"=>"e33bf216-e84f-445a-b801-93a87376991d", "resultCode"=>35, "resultString"=>"There were errors in the data supplied. Please correct and re-submit.", "userString"=>"Invalid deviceClass for profile type.", "creationTimestamp"=>"2015-09-14T22:55:33Z", "protocolVersion"=>"QH65B2", "requestId"=>nil, "userLocale"=>"en_US", "requestUrl"=>"https://developer.apple.com/services-account/QH65B2/account/ios/profile/createProvisioningProfile.action", "httpCode"=>200, "validationMessages"=>[{"validationKey"=>"provision.device.deviceclass.error", "validationUserMessage"=>"Invalid deviceClass for profile type."}]} (Spaceship::Client::UnexpectedResponse)
	from /Library/Ruby/Gems/2.0.0/gems/spaceship-0.6.1/lib/spaceship/portal/portal_client.rb:322:in `create_provisioning_profile!'
	from /Library/Ruby/Gems/2.0.0/gems/spaceship-0.6.1/lib/spaceship/portal/provisioning_profile.rb:221:in `block in create!'
	from /Library/Ruby/Gems/2.0.0/gems/spaceship-0.6.1/lib/spaceship/client.rb:160:in `call'
	from /Library/Ruby/Gems/2.0.0/gems/spaceship-0.6.1/lib/spaceship/client.rb:160:in `with_retry'
	from /Library/Ruby/Gems/2.0.0/gems/spaceship-0.6.1/lib/spaceship/portal/provisioning_profile.rb:220:in `create!'
	from /Library/Ruby/Gems/2.0.0/gems/sigh-0.10.7/lib/sigh/runner.rb:95:in `create_profile!'
	from /Library/Ruby/Gems/2.0.0/gems/sigh-0.10.7/lib/sigh/runner.rb:34:in `run'
	from /Library/Ruby/Gems/2.0.0/gems/sigh-0.10.7/lib/sigh/manager.rb:7:in `start'
	from /Library/Ruby/Gems/2.0.0/gems/sigh-0.10.7/bin/sigh:34:in `block (2 levels) in run'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:153:in `run'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:428:in `run_active_command'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:68:in `run!'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/delegates.rb:15:in `run!'
	from /Library/Ruby/Gems/2.0.0/gems/sigh-0.10.7/bin/sigh:86:in `run'
	from /Library/Ruby/Gems/2.0.0/gems/sigh-0.10.7/bin/sigh:93:in `<top (required)>'
	from /usr/bin/sigh:23:in `load'
	from /usr/bin/sigh:23:in `<main>'

I just tried and everything is working fine for me.

I think this was caused by some unusual devices we had in our portal.  Apple's developer site did not show them when editing profiles, but spaceship was finding them.  I disabled the devices since we no longer need them, so I may just close this for now.

Really, this is more of a spaceship issue I think than a sigh issue

I got the same issue while trying to generate an Ad Hoc provisioning profile. Does it have something to do with the new devices like Apple TV, Watch?

I am not sure, I didn't figure it out. I resorted to just using "sigh repair" to regenerate bad certs with their existing settings.
Sent from my iPhone

On Oct 15, 2015, at 1:41 PM, Alain Hufkens<EMAIL_ADDRESS>wrote:
I got the same issue while trying to generate an Ad Hoc provisioning profile. Does it have something to do with the new devices like Apple TV, Watch?
—
Reply to this email directly or view it on GitHub.

That didn't work for me because the error occurs when the ad hoc provisioning profile is created. I managed to work around it by manually creating the ad hoc prov profile in Developer Portal and remove the force parameter from sigh in my fastlane lane.

Just enabled crash reporting and this is the id: 866c24eec84500a7c0bc31eb1503100c

@hufkens thanks for the crash report. It seems like the provisioning profile that was generated by the Dev Portal is invalid. Did all this work before you added the Apple TV?

This project has no apple TV project, but I have an Apple TV device in my devices. Maybe that helps?

Same issue here. I also have an Apple TV in my devices.
here is the error log from fastlane
[13:18:15]: {"responseId"=>"c2a83060-10f5-428c-8305-0d5b001fd6ed", "resultCode"=>35, "resultString"=>"There were errors in the data supplied. Please correct and re-submit.", "userString"=>"Invalid deviceClass for profile type.", "creationTimestamp"=>"2015-10-23T11:18:15Z", "protocolVersion"=>"QH65B2", "requestId"=>nil, "userLocale"=>"en_US", "requestUrl"=>"https://developer.apple.com/services-account/QH65B2/account/ios/profile/createProvisioningProfile.action", "httpCode"=>200, "validationMessages"=>[{"validationKey"=>"provision.device.deviceclass.error", "validationUserMessage"=>"Invalid deviceClass for profile type."}]}

I'm going to try to fix this properly in spaceship today.  I'll make a PR there and then figure out how to update sigh with the new spaceship.

Thanks for the great pull requests @icecrystal23 :+1:

I am getting a similar issue when I try to use force to regenerate a tvOS type Provisioning Profile. Any thoughts?


[BUG] Multiple messages aren't picked from the Subscription when using ServiceBusReceiverAsyncClient

Describe the bug

Unable to receive multiple Service Bus Messages when using ServiceBusReceiverAsyncClient
If we have 50 messages(say) in the subscription, only the first 10 messages(based on prefetch count) are picked by the ServiceBusReceiverAsyncClient
Not sure if the Listener receiver connection gets disconnected after downloading the first batch of messages.

Exception or Stack Trace
NA
To Reproduce
Steps to reproduce the behavior:
Send batch of messages to the subscription. [ Example: n*prefetch_count]. Here we sent 50 messages to the subscription to reproduce the issue
Code Snippet
public class WebJobListener {
    private ServiceBusReceiverAsyncClient serviceBusReceiverAsyncClient;
    private Gson gson;
    private ILogger log;
    private static final Type requestModelType = new TypeToken<RequestModel>() {}.getType();

    @Inject
    public WebJobListener(ILogger log) {
        this.serviceBusReceiverAsyncClient = new ServiceBusClientBuilder()
                .connectionString(System.getenv("AZURE_SERVICEBUS_NAMESPACE_CONNECTION_STRING"))
                .retryOptions(new AmqpRetryOptions().setTryTimeout(Duration.ofSeconds(30)))
                .receiver()
                .receiveMode(ServiceBusReceiveMode.PEEK_LOCK)
                .topicName("MY_TOPIC")
                .subscriptionName("MY_SUBSCRIPTION")
                .prefetchCount(10)
                .maxAutoLockRenewDuration(Duration.ofMinutes(10))
                .disableAutoComplete()
                .buildAsyncClient();
        this.jobManager = jobManager;
        this.captureJob = new CaptureJob();
        this.gson = new Gson();
        this.log = log;
    }

    public void run() {
        log.trace("Webjob worker starting to Listen", LogLevels.Verbose, null);
        serviceBusReceiverAsyncClient.receiveMessages().subscribe(message -> {
                    // Process message. If an exception is thrown from this consumer, the message is abandoned.
                    // Otherwise, it is completed.
                    if(message.getSubject().contentEquals("MY_SUBSCRIPTION")) {
                        RequestModel requestModel = gson.fromJson(message.getBody().toString(), requestModelType);

                        // My logic goes here
                        //my_test_function(requestModel);

                        // Complete the message after function completes
                        serviceBusReceiverAsyncClient.complete(message);
                    }
                },
                error -> log.trace("Error occurred while receiving message from subscription: " + error , LogLevels.Error, null));
    }
}

Expected behavior

ServiceBusReceiverAsyncClient should be able to pick all messages from the subscription, based on the prefetch count configured.
Adding retryOptions doesn't solve the issue

Screenshots
NA
Setup (please complete the following information):

OS: Ubuntu 18.04 LTS
IDE : IntelliJ
Version of the Library used: Java 1.8

Additional context
azure-messaging-servicebus library 7.0.1 version was used.
        <dependency>
            <groupId>com.azure</groupId>
            <artifactId>azure-messaging-servicebus</artifactId>
            <version>7.0.1</version>
        </dependency>

Information Checklist
Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report

[x] Bug Description Added
[x] Repro Steps Added
[x] Setup information Added

@sudharsan2020 Thank You for using our library.
When you call serviceBusReceiverAsyncClient.complete(message) which is a Async call, It returns a Mono and you are not subscribing to this.
Here is a example which show, how to chain the multiple Async calls.  Please try this.
https://github.com/Azure/azure-sdk-for-java/blob/master/sdk/servicebus/azure-messaging-servicebus/src/samples/java/com/azure/messaging/servicebus/ReceiveMessageAndSettleAsyncSample.java#L83

@hemanttanwar  While trying to fetch next batch of messages after prefetch count, I am still seeing the below errors. Will the receiver client will be connected 24*7 or we need to reestablish the connection after a time range.

The connection was inactive for more than the allowed 300000 milliseconds and is closed by container 'LinkTracker'.
Error occurred. Removing and disposing session.
Idle link tracker, link nextstep-service-bus has been idle for 1800000ms

Attaching the entire log for your reference.
10:25:28.712 [reactor-executor-1] INFO  c.a.c.a.i.handler.SessionHandler - onSessionRemoteClose connectionId[nextstep-service-bus/subscriptions/AI_EXTRACTION_RQST], entityName[MF_725f99_1613537389496], condition[Error{condition=null, description='null', info=null}]
10:25:28.712 [reactor-executor-1] INFO  c.a.c.a.i.handler.SessionHandler - onSessionRemoteClose closing a local session for connectionId[MF_725f99_1613537389496], entityName[nextstep-service-bus/subscriptions/AI_EXTRACTION_RQST], condition[null], description[null]
10:25:28.713 [reactor-executor-1] INFO  c.a.c.a.i.ReactorConnection - connectionId[MF_725f99_1613537389496] sessionName[nextstep-service-bus/subscriptions/AI_EXTRACTION_RQST]: Error occurred. Removing and disposing session.
10:25:28.713 [reactor-executor-1] INFO  c.a.c.a.i.ReactorSession - connectionId[MF_725f99_1613537389496], sessionId[nextstep-service-bus/subscriptions/AI_EXTRACTION_RQST], errorCondition[n/a]: Disposing of session.
10:25:28.716 [reactor-executor-1] INFO  c.a.c.a.i.handler.SendLinkHandler - onLinkRemoteClose connectionId[MF_725f99_1613537389496], linkName[cbs:sender], errorCondition[amqp:connection:forced], errorDescription[The connection was inactive for more than the allowed 300000 milliseconds and is closed by container 'LinkTracker'. TrackingId:6515879c83774e0da496e8f6f415a0ed_G27, SystemTracker:gateway7, Timestamp:2021-02-17T04:55:29]
10:25:28.716 [reactor-executor-1] INFO  c.a.c.a.i.handler.SendLinkHandler - processOnClose connectionId[MF_725f99_1613537389496], linkName[cbs:sender], errorCondition[amqp:connection:forced], errorDescription[The connection was inactive for more than the allowed 300000 milliseconds and is closed by container 'LinkTracker'. TrackingId:6515879c83774e0da496e8f6f415a0ed_G27, SystemTracker:gateway7, Timestamp:2021-02-17T04:55:29]
10:25:28.724 [reactor-executor-1] WARN  c.a.c.a.i.RequestResponseChannel - Retry #1. Transient error occurred. Retrying after 4511 ms.
The connection was inactive for more than the allowed 300000 milliseconds and is closed by container 'LinkTracker'. TrackingId:6515879c83774e0da496e8f6f415a0ed_G27, SystemTracker:gateway7, Timestamp:2021-02-17T04:55:29, errorContext[NAMESPACE: capture-dev-service-bus.servicebus.windows.net, PATH: $cbs, REFERENCE_ID: cbs:sender, LINK_CREDIT: 99]
10:25:28.725 [reactor-executor-1] ERROR c.a.c.a.i.RequestResponseChannel - cbs - Exception in RequestResponse links. Disposing and clearing unconfirmed sends.
The connection was inactive for more than the allowed 300000 milliseconds and is closed by container 'LinkTracker'. TrackingId:6515879c83774e0da496e8f6f415a0ed_G27, SystemTracker:gateway7, Timestamp:2021-02-17T04:55:29, errorContext[NAMESPACE: capture-dev-service-bus.servicebus.windows.net, PATH: $cbs, REFERENCE_ID: cbs:sender, LINK_CREDIT: 99]
10:25:28.726 [reactor-executor-1] INFO  c.a.c.a.i.handler.ReceiveLinkHandler - onLinkRemoteClose connectionId[MF_725f99_1613537389496], linkName[cbs:receiver], errorCondition[amqp:connection:forced], errorDescription[The connection was inactive for more than the allowed 300000 milliseconds and is closed by container 'LinkTracker'. TrackingId:6515879c83774e0da496e8f6f415a0ed_G27, SystemTracker:gateway7, Timestamp:2021-02-17T04:55:29]
10:25:28.727 [reactor-executor-1] INFO  c.a.c.a.i.handler.ReceiveLinkHandler - processOnClose connectionId[MF_725f99_1613537389496], linkName[cbs:receiver], errorCondition[amqp:connection:forced], errorDescription[The connection was inactive for more than the allowed 300000 milliseconds and is closed by container 'LinkTracker'. TrackingId:6515879c83774e0da496e8f6f415a0ed_G27, SystemTracker:gateway7, Timestamp:2021-02-17T04:55:29]
10:25:28.727 [reactor-executor-1] INFO  c.a.c.a.i.handler.SessionHandler - onSessionRemoteClose connectionId[cbs-session], entityName[MF_725f99_1613537389496], condition[Error{condition=null, description='null', info=null}]
10:25:28.727 [reactor-executor-1] INFO  c.a.c.a.i.handler.SessionHandler - onSessionRemoteClose closing a local session for connectionId[MF_725f99_1613537389496], entityName[cbs-session], condition[null], description[null]
10:25:28.727 [reactor-executor-1] INFO  c.a.c.a.i.ReactorConnection - connectionId[MF_725f99_1613537389496] sessionName[cbs-session]: Error occurred. Removing and disposing session.
10:25:28.727 [reactor-executor-1] INFO  c.a.c.a.i.ReactorSession - connectionId[MF_725f99_1613537389496], sessionId[cbs-session], errorCondition[n/a]: Disposing of session.
10:25:28.727 [reactor-executor-1] INFO  c.a.c.a.i.handler.ConnectionHandler - onConnectionRemoteClose hostname[capture-dev-service-bus.servicebus.windows.net:5671], connectionId[MF_725f99_1613537389496], errorCondition[amqp:connection:forced], errorDescription[The connection was inactive for more than the allowed 300000 milliseconds and is closed by container 'LinkTracker'. TrackingId:6515879c83774e0da496e8f6f415a0ed_G27, SystemTracker:gateway7, Timestamp:2021-02-17T04:55:29]
10:25:28.727 [reactor-executor-1] INFO  c.a.c.a.i.handler.ConnectionHandler - onTransportClosed hostname[capture-dev-service-bus.servicebus.windows.net:5671], connectionId[MF_725f99_1613537389496], error[n/a]
10:25:28.728 [reactor-executor-1] INFO  c.a.c.a.i.handler.CustomIOHandler - onTransportClosed connectionId[MF_725f99_1613537389496], hostname[capture-dev-service-bus.servicebus.windows.net:5671]
10:25:28.728 [reactor-executor-1] INFO  c.a.c.a.i.handler.SendLinkHandler - onLinkLocalClose connectionId[MF_725f99_1613537389496], linkName[cbs:sender], errorCondition[amqp:connection:forced], errorDescription[The connection was inactive for more than the allowed 300000 milliseconds and is closed by container 'LinkTracker'. TrackingId:6515879c83774e0da496e8f6f415a0ed_G27, SystemTracker:gateway7, Timestamp:2021-02-17T04:55:29]
10:25:28.729 [reactor-executor-1] INFO  c.a.c.a.i.handler.ReceiveLinkHandler - onLinkLocalClose connectionId[MF_725f99_1613537389496], linkName[cbs:receiver], errorCondition[null], errorDescription[null]
10:25:28.729 [reactor-executor-1] INFO  c.a.c.a.i.handler.ConnectionHandler - onConnectionLocalClose hostname[capture-dev-service-bus.servicebus.windows.net:5671], connectionId[MF_725f99_1613537389496], errorCondition[null], errorDescription[null]
10:25:28.729 [reactor-executor-1] INFO  c.a.c.a.i.handler.ConnectionHandler - onConnectionUnbound hostname[capture-dev-service-bus.servicebus.windows.net:5671], connectionId[MF_725f99_1613537389496], state[CLOSED], remoteState[CLOSED]
10:25:28.729 [reactor-executor-1] INFO  c.a.c.a.i.handler.SessionHandler - onSessionFinal connectionId[MF_725f99_1613537389496], entityName[nextstep-service-bus/subscriptions/AI_EXTRACTION_RQST], condition[null], description[null]
10:25:28.729 [reactor-executor-1] INFO  c.a.c.a.i.handler.SendLinkHandler - onLinkFinal connectionId[MF_725f99_1613537389496], linkName[cbs:sender]
10:25:28.730 [reactor-executor-1] INFO  c.a.c.a.i.handler.ReceiveLinkHandler - onLinkFinal connectionId[MF_725f99_1613537389496], linkName[cbs:receiver]
10:25:28.730 [reactor-executor-1] INFO  c.a.c.a.i.handler.SessionHandler - onSessionFinal connectionId[MF_725f99_1613537389496], entityName[cbs-session], condition[null], description[null]
10:25:28.730 [reactor-executor-1] INFO  c.a.c.a.i.handler.ConnectionHandler - onConnectionFinal hostname[capture-dev-service-bus.servicebus.windows.net:5671], connectionId[MF_725f99_1613537389496], errorCondition[null], errorDescription[null]
10:25:28.732 [reactor-executor-1] INFO  c.a.m.s.i.ServiceBusConnectionProcessor - namespace[] entityPath[capture-dev-service-bus.servicebus.windows.net]: Channel is closed.
10:25:28.733 [reactor-executor-1] INFO  c.a.c.a.i.ReactorConnection - connectionId[MF_725f99_1613537389496], errorCondition[n/a]: Disposing of ReactorConnection.
10:25:33.237 [parallel-9] INFO  c.a.c.a.i.RequestResponseChannel - Retry #1. Requesting from upstream.
10:25:33.237 [parallel-9] INFO  c.a.c.a.i.RequestResponseChannel - namespace[MF_725f99_1613537389496] entityPath[$cbs]: Connection not requested, yet. Requesting one.
10:25:33.237 [parallel-9] WARN  c.a.c.a.i.RequestResponseChannel - Non-retryable error occurred in connection.
10:25:33.238 [parallel-9] INFO  c.a.c.a.i.RequestResponseChannel - namespace[MF_725f99_1613537389496] entityPath[$cbs]: Error in AMQP channel processor. Notifying 0 subscribers.
10:25:58.734 [reactor-executor-1] INFO  c.a.c.a.i.ReactorExecutor - Unable to acquire dispose reactor semaphore within timeout.
10:25:58.736 [reactor-executor-1] INFO  c.a.c.a.i.AmqpExceptionHandler - Shutdown received: ReactorExecutor.close() was called., isTransient[false], initiatedByClient[true]
10:25:58.739 [reactor-executor-1] WARN  c.a.c.a.i.ReactorExecutor - connectionId[MF_725f99_1613537389496], message[Scheduling reactor failed because the scheduler has been shut down.]
Task java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask@75c8c075 rejected from java.util.concurrent.ScheduledThreadPoolExecutor@487fe083[Terminated, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 0]
10:25:58.739 [reactor-executor-1] INFO  c.a.c.a.i.ReactorExecutor - connectionId[MF_725f99_1613537389496], message[Stopping the reactor because thread was interrupted or the reactor has no more events to process.]
10:38:42.693 [parallel-8] INFO  c.a.c.a.i.ActiveClientTokenManager - Refreshing token. scopes[amqp://capture-dev-service-bus.servicebus.windows.net/nextstep-service-bus]
10:38:42.915 [reactor-executor-2] INFO  c.a.c.a.i.ActiveClientTokenManager - Authorization successful. Refreshing token in 1079000 ms. scopes[amqp://capture-dev-service-bus.servicebus.windows.net/nextstep-service-bus]
10:51:03.089 [reactor-executor-2] INFO  c.a.c.a.i.handler.SendLinkHandler - onLinkRemoteClose connectionId[MF_20a878_1613537389305], linkName[nextstep-service-bus], errorCondition[amqp:link:detach-forced], errorDescription[Idle link tracker, link nextstep-service-bus has been idle for 1800000ms TrackingId:95859ace-6f7a-4f96-96a2-8c4aef23bcc3_G19, SystemTracker:client-link7019444, Timestamp:2021-02-17T05:21:02]
10:51:03.089 [reactor-executor-2] INFO  c.a.c.a.i.handler.SendLinkHandler - processOnClose connectionId[MF_20a878_1613537389305], linkName[nextstep-service-bus], errorCondition[amqp:link:detach-forced], errorDescription[Idle link tracker, link nextstep-service-bus has been idle for 1800000ms TrackingId:95859ace-6f7a-4f96-96a2-8c4aef23bcc3_G19, SystemTracker:client-link7019444, Timestamp:2021-02-17T05:21:02]
10:51:03.092 [reactor-executor-2] INFO  c.a.c.a.i.ReactorSession - linkName[nextstep-service-bus]: Error occurred. Removing and disposing send link.
10:51:03.092 [reactor-executor-2] INFO  c.a.c.a.i.handler.SendLinkHandler - onLinkLocalClose connectionId[MF_20a878_1613537389305], linkName[nextstep-service-bus], errorCondition[amqp:link:detach-forced], errorDescription[Idle link tracker, link nextstep-service-bus has been idle for 1800000ms TrackingId:95859ace-6f7a-4f96-96a2-8c4aef23bcc3_G19, SystemTracker:client-link7019444, Timestamp:2021-02-17T05:21:02]

@hemanttanwar We are headed for critical release based on the Service Bus Architecture change. If you could help, it would be really great. The parallel .NET API for Azure Service Bus implemented by our Internal team doesn't face the above-mentioned issues. Not sure why we face such issues with Java API alone?

@sudharsan2020 ,  The client should be able to re-establish the connection after the connection is inactive.
setMaxConcurrentCalls : It is because  ServiceBusProcessorClient is synchronous client and SDK provide this feature as convenience API.
ServiceBusReceiverAsyncClient is based on project reactor and you leverage its API for parallel processing https://projectreactor.io/docs/core/release/reference/#schedulers.
ServiceBusProcessorClient : This returns ServiceBusReceivedMessageContext and you can call .complete() method on it.
Prefetch count = 50 scenario : I have done few test where prefetchCount is 50 using ServiceBusReceiverAsyncClient and I have sent 55 messages in the queue. I do receive all the 55 messages immediately.
Next  steps : Can you send me code sample for this case where you do not receive 51st message ? If it is bigger code base, you can upload sample program on a repo. Please make sure there is no proprietary information there.

@hemanttanwar Thanks for your reply. The code remains same as mentioned in the above thread.

Do you recommend any optimal retry values while building the client? .retryOptions(new AmqpRetryOptions().setTryTimeout(Duration.ofSeconds(30))). I see lot of options in API like setMode and setMaxRetries and unsure what it does
Do we have an option to limit the number of messages fetched from the Subscription. Does prefetchCount guarantees that since maxConcurrentCalls isn't supported on the async client.
Please confirm if these are optimal configuration for the subscription
https://pasteboard.co/JPGXojBP.png

Currently I could see all the messages are completed when sent in batches of 50 also noticed this after upgrading the azure-messaging-servicebus from 7.0.1 to 7.0.2. I will monitor this observation for a week and close this ticket.
Thanks a lot for your timely support :+1:

@sudharsan2020 The AmqpRetryOptions() has default values of mode = AmqpRetryMode.EXPONENTIAL. This will dictate how the retry attempts to recover from connection failure will work. Each API have java doc explaining what it does.
Normally the default setup should recover from most connection errors.  But it is better to observe in your environment and see if you want to override the default "AmqpRetryOptions".

setMaxRetries  : How many times it will retry to perform the operation.
prefetchCount : Wil limit how many messages fetched from Subscription. The default value is 1.
JPGXojBP.png : You have maxDeliveryCount =10, which is default. It looks good. Based on your application , if you need to finetune this you can read more documentation here https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-dead-letter-queues#exceeding-maxdeliverycount

@hemanttanwar Thanks a lot for your suggestion. Also noticed a weird scenario the messages aren't completed when using a sync client to receive the messages.
I've followed the below API implementation for receiving the messages through sync client
https://github.com/Azure/azure-sdk-for-java/blob/master/sdk/servicebus/azure-messaging-servicebus/src/samples/java/com/azure/messaging/servicebus/ReceiveMessageSample.java#L51
Sync client to receive messages:
public class AzureServiceBusReceiverClient {
    private ServiceBusReceiverClient receiverClient;

    public AzureServiceBusReceiverClient() {

        // Build the receiver client
        this.receiverClient = new ServiceBusClientBuilder()
                .connectionString(System.getenv("AZURE_SERVICEBUS_NAMESPACE_CONNECTION_STRING"))
                .receiver()
                .topicName("MY_TOPIC")
                .subscriptionName("MY_SUBSCRIPTION")
                .prefetchCount(10)
                .disableAutoComplete()
                .buildClient();
    }

    /*
     * Function to receive Service Bus messages to topic
     * @param serviceBusMessages: List of messages to be received in batch
     */
    public List<ServiceBusReceivedMessage> receiveMessages(Map<String, String> documentProperties) {

        // Iterate through messages
        List<ServiceBusReceivedMessage> serviceBusReceivedMessageList = new ArrayList<>();
        try {

            for (ServiceBusReceivedMessage serviceBusReceivedMessage :
                    receiverClient.receiveMessages(10)) {

                // receives message is passed to callback
                if (serviceBusReceivedMessage.getSubject() != null
                        && serviceBusReceivedMessage.getContentType() != null
                        && serviceBusReceivedMessage
                        .getSubject()
                        .contentEquals("MY_SUBSCRIPTION")
                        && serviceBusReceivedMessage
                        .getApplicationProperties()
                        .get("customer_id")
                        .equals(documentProperties.get("customer_id"))) {

                    // Append the message response
                    serviceBusReceivedMessageList.add(serviceBusReceivedMessage);

                    // Messages from the sync receiver MUST be settled explicitly.
                    receiverClient.complete(serviceBusReceivedMessage);
                }
            }
        } catch (Exception e) {
            throw new RuntimeException(e);
        }

        // Sort this based on page number and remove duplicates
        return serviceBusReceivedMessageList;
    }
}

@sudharsan2020  I took your above code, removed if  condition and just called receiverClient.complete(serviceBusReceivedMessage);
It was able to complete the message, worked as expected.
I believe the if condition is failing in your case and control is not going into if block. Can  you check that ?

Closing the ticket as the issue is resolved. Thanks a lot @hemanttanwar for your support :100: :1st_place_medal:


Generation of stackless LR(1) parser

Good news:
I finally decide to spend some time and dive into LR parsing again. The result is we have a stackless LR(1) parser for grammar 4.55 in ASU86. The idea of course comes from Ralf Hinze's paper. This is particular cool because no explicit stack data structure is present now. The procedure of how to write such stackless parser is also clear to me.
Bad news:

MetaOCaml still cannot generate pattern matching.
Even if 1 is resolved, the program to generate such parser could be horribly complex. I expect there will tons of GADT, memorization tricks, code generation hacks, etc... Anyway, it will definitely be a triumph if I can finish it
Consider 2 is done. Menhir, as a very mature and advanced parser generator, has many advantages over our technique. Although the aim of this project is different, I still expect our parser can be usable in real world, which means extra tons of effort to bring it to usable condition. I still remember to original goal of this project, which is to design a more PEG-like parser generator.

any opinion? @yallop

Hi, I just came across this project and noticed that the readme says that it is an "improvement" to Derivation of a Typed Functional LR Parser. In what ways do you improve on the algorithm described in the paper?
I've been studying stackless LR parsing recently as well, so I'm curious what you found.

@Storyyeller sorry, this project started two years ago and was kind of abandoned. I couldn't give you a good answer now...


:FuzzyOpen searches in root directory

Hi I installed this on Ubuntu and it works great - on my mac though - whenever I use :FuzzyOpen it starts the search from the root directory - rather than my current directory. It's possible it's something in my setup but I can't think what - my init.vim is the same for both machines.

By default, it will look for the closest .git directory to start from. Could that be it? If you create a git or hg repo then it will use that as the root.

Err, yes that was it. Somehow I had put my root as a git directory! I feel silly but also very relieved. Thanks!


Question about WMT EN-RO

Hi, I have the following three questions about the experiment of EN-RO.

In the paper, you mention that the batch size is 64k and training updates is 100K.  But WMT 16 EN-RO is a smaller dataset which only consists of only 0.6M training examples. I wonder if training with those large batch size and training so long will not overfit.
Why is wpb=21k in https://gist.github.com/sacmehta/57c12358434f12bf15939311469c7173#file-delight_wmt16_en2ro_dm_384-txt?
Also, can you provide the evaluation script you use to compute the BLUE score of WMT EN-RO?

Compared to Transformer-based models that are trained for 300K iterations with a batch size of 128 K tokens per batch, this is very small. We have not done any hyper-parameter tuning. We adapted settings from existing transformer based models. We believe that a good hyper-parameter search would further improve performance.

https://arxiv.org/pdf/1904.09324.pdf

wpb is words processed per batch. For more information, check Fairseq.

we used default settings in Fairseq for evaluation on WmT16 En-Ro dataset.

https://github.com/sacmehta/delight/blob/master/readme_files/nmt/wmt16_en2ro.md#evaluation

Thanks a million.
Can you provide the data processing script for  WMT16 EN-RO? Since I find that you compute the BLEU score using the processed test set in Fairseq generate.py.. I just want to use the same data processing as you but binarize with my only dictionary.

We follow the instructions in Fairseq and didn’t do anything special or different. You can also follow the same instructions.

Does fairseq provide the data pre-process scripts for EN-RO?

If you have a dataset, data processing is a standard step

Select number of BPE tokens
Learn BPE
Apply BPE
Binarize the dataset

https://github.com/pytorch/fairseq/blob/9ae39465daff48650ed7956adf2980a697016d50/examples/translation/prepare-wmt14en2de.sh#L88

Closing now because of inactivity. Please feel free to reopen.


Fix deprecated issue for IgniteInfo

Checks

[x] Avoid including large-size files in the PR.
[x] Clean up long text outputs from code cells in the notebook.
[x] For security purposes, please check the contents and remove any sensitive info such as user names and private key.
[x] Ensure (1) hyperlinks and markdown anchors are working (2) use relative paths for tutorial repo files (3) put figure and graphs in the ./figure folder
[x] Notebook runs automatically ./runner.sh -t <path to .ipynb file>

Hi @KumoLiu , can you make a note why we would like to set weights_only to True either in the PR message or in the notebook?
The rest looks good to me.

Hi @KumoLiu , can you make a note why we would like to set weights_only to True either in the PR message or in the notebook? The rest looks good to me.

Sure, added it in the descrption.


Adding tests for Mock SCM methods.

Resolves #798.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

6 of 6 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+1.05%) to 25.413%

Totals

Change from base Build<PHONE_NUMBER>:
1.05%

Covered Lines:
2752

Relevant Lines:
10829

💛  - Coveralls

Codecov Report

Merging #802 (b71b707) into master (4bfd198) will increase coverage by 0.95%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #802      +/-   ##
==========================================
+ Coverage   22.31%   23.26%   +0.95%
==========================================
  Files          88       88
  Lines       10416    10422       +6
==========================================
+ Hits         2324     2425     +101
+ Misses       7819     7716     -103
- Partials      273      281       +8

Flag
Coverage Δ

unittests
23.26% <100.00%> (+0.95%)
:arrow_up:

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

Impacted Files
Coverage Δ

scm/mock.go
35.66% <100.00%> (+32.65%)
:arrow_up:

scm/helper.go
26.08% <0.00%> (+26.08%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


oxDNA export issue

When I load this cadnano JSON design into scadnano, there seems to be 3 problems.

The main grid view has irregularly spaced rows
The design will not allow assignment of a scaffold sequence. When I try to assign predefined M13 p7429 scaffold, it says: "s1=CTGGAAG and s2=???????? are not the same length."
When exporting the design to oxDNA format, the .top file produced seems to have 6 staple strands which are 1 base too long. Below is a list of ascending strand lengths in the .top file produced:

[3, 20, 20, 20, 24, 24, 24, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 35, 35, 35, 35, 35, 35, 38, 38, 38, 38, 38, 38, 40, 40, 40, 42, 42, 42, 43, 43, 43, 43, 43, 43, 44, 44, 44, 2410]
Conversely, when a .top file is produced by converting the original cadnano JSON file to oxDNA, via the tacoxDNA tools, this is the list  of ascending strand lengths in the .top file produced:
[3, 20, 20, 20, 24, 24, 24, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 35, 35, 35, 35, 35, 35, 37, 37, 37, 38, 38, 38, 40, 40, 40, 42, 42, 42, 42, 42, 42, 43, 43, 43, 44, 44, 44, 2410]
Note that strand lengths in the scadnano .sc file DO agree with those in the .top file produced via cadnano -> oxDNA via the tacoxDNA tools. It seems to be an issue in the scadnano oxDNA export for this design.

Sounds like this is a few different issues.
The Python library has import/export code for cadnano and oxDNA, so I'll open issues there and point to this one.

Here is the original design in cadnano v2:

And a close-up of the deletions in one portion of the design:

@ben-s-e I want to point out that this design is ideal for using helix groups to help display in 2D more like how the structure actually appears. I'd put helices 0,1,2,3,4,5 in one group, helices 12,13,14,15,16,17 in another, and helices 22,24,25,26,27,28,29,31,33 in another. Then rotate two of the helix groups by setting their pitch fields (in units of degrees that rotate clockwise). Finally, use the "move helix groups" edit mode (bottom button under edit modes) to Ctrl+click+drag to translate the helix groups to where you want them.
This will get a bit easier after I implement this feature, which I realized is lacking and would make this process faster: https://github.com/UC-Davis-molecular-computing/scadnano/issues/679 Currently, you would have to add new helices to the new groups, then select the domains on helices in one group and drag them to move them to the new group.


Enhancement/admin channel add lb strategy

Adding Load Balancer strategy name to EventProcessor Object.
P.S. Closing PR due to merge conflict issues.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.3 out of 5 committers have signed the CLA.:white_check_mark: MGathier:white_check_mark: smcvb:white_check_mark: abuijze:x: vaishsriram:x: corradomYou have signed the CLA already but the status is still pending? Let us recheck it.

P.S. Closing PR due to merge conflict issues.


Unable to start hyperiond on Raspi0

Hi guys,
Getting the following error when I try to start hyperiond from the deploy folder:
pi@Hyperion:/usr/local/lib $ ~/deploy/hyperiond
/home/pi/deploy/hyperiond: error while loading shared libraries: libpython3.7m.so.1.0: cannot open shared object file: No such file or directory
pi@Hyperion:/usr/local/lib $
I compiled the executable from source using the docker technique on a raspberry pi 3 using the following command
wget -qN https://raw.github.com/hyperion-project/hyperion.ng/master/bin/scripts/docker-compile.sh && chmod +x *.sh && ./docker-compile.sh -t rpi-raspbian-buster
I then moved the deploy folder over to my pi0 via sftp
I've got python 3.7 installed on that pi, and the file I guess it is looking for his located here
pi@Hyperion:/usr/local/lib $ ll total 49528
-r-xr-xr-x  1 root staff 14813400 Jul 30 20:25 libpython3.6m.a
-r-xr-xr-x  1 root staff 16626828 Nov  2 03:36 libpython3.7m.a
-rwxr-xr-x  1 root staff 19246196 Nov  1 19:39 libpython3.8.a
drwxr-sr-x  2 root staff     4096 Nov  2 03:58 pkgconfig
drwxrwsr-x  4 root staff     4096 Jan  8  2019 python2.7
drwxrwsr-x  3 root staff     4096 Apr 18  2018 python3.5
drwxr-sr-x 35 root staff     4096 Jul 30 21:09 python3.6
drwxr-sr-x 35 root staff     4096 Nov  2 03:58 python3.7
drwxr-sr-x 35 root staff     4096 Nov  1 20:19 python3.8
Any help here would be appreciated
Joe

I'm just re-compliling, I thought I was running buster on the zero, turns out its stretch, I'll let you know how it goes

!Note to self!
Check the OS version before wasting countless hours installing versions of python to fix an issue that is non existent 😋


Add "Build to OTIS" option to ticket status

A request from Sara: "Build to OTIS" is not represented in the Medley Dashboard.

What would be even better is if this just moved to that correct status based on the JIRA ticket status.

I am interested in this issue as well.

This is resolved via a config change on the server. Please follow #64 for the updates on the "What would be even better is if this just moved to that correct status based on the JIRA ticket status."


Too many open files / Wiki Information

Just in case of getting this error you should increase OS limits.
If you are using ubuntu this configuration is under /etc/security/limits.conf
root soft nproc 20470
root hard nproc 163840
root soft nofile 10240
root hard nofile 655360

This process is actually the responsibility of system administrators, but does not hurt to add information to the readme. :)
DB Log file size ~10 GB
Parallel processing create 1045 files under /tmp
Error Example
[========================>] Parsed<PHONE_NUMBER>3 bytes of<PHONE_NUMBER>3 (100.00%), queries: 1907172, events: 602
FATAL: can't open temp file /tmp/tmp_pgbadger4IKD.bin, Too many open files

Best Regards

What is your pgbadger command line?

Here,
pgbadger \
        -f stderr \
        -I /opt/database/db_data/dev/log/postgresql-*.log \
        -O /var/lib/docker/volumes/apache_kktc-report-www/_data/db/dev \
        -o index.html \
        --exclude-query "^(SELECT 1)" \
        -T "Prod DB" \
        -X \
        -j 4

There is only 4 parallel processes which mean 4 temporary files per log file, how many files are concerned by /opt/database/db_data/dev/log/postgresql-*.log?

1007 log files under the directory and continue to increase.
ls | wc -l
1007

You might want to parallelize one process per file not multiple processes for one file. Use -J 4 (uppercase J)  instead of -j 4 (lowercase j).

Saying that, this will not solve the problem of temporary file so increase max open file is the solution in this case.

I'il try and let you know. Thank you for your interest.

Nope still same error.  Increasing max open file is the solution i think. Btw -J (uppercase j) is more faster then -j (lowercase j) you mentioned before if you have a lot of log files.

Yes this is really faster if your log file are small and I guess that this is your case. I don't know why you have 1000+ log file, but you might tune your postgresql.conf to have bigger log file.

I have many log files because its 20 days files :) I upgrade postgres 10.3 to 11.5 and i dont want to lose log files so i kept :) Now i have over 40-50 log file and i have 20 days historical pgbadger analysis :) Thanks


Use of SPF logo

Guys, I'm not sure people are allowed to use the police logo without authorization. Best to replace it with something else.

Noted


install error

/usr/bin/ld: /usr/local/lib/libavcodec.a(tiff.o): undefined reference to symbol 'lzma_code@@XZ_5.0'
/usr/lib/x86_64-linux-gnu/liblzma.so.5: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
CMakeFiles/seg_tree_sample.dir/build.make:109: recipe for target 'seg_tree_sample' failed
make[2]: *** [seg_tree_sample] Error 1
CMakeFiles/Makefile2:64: recipe for target 'CMakeFiles/seg_tree_sample.dir/all' failed
make[1]: *** [CMakeFiles/seg_tree_sample.dir/all] Error 2
Makefile:72: recipe for target 'all' failed
make: *** [all] Error 2
===========
I check the liblzma is installed.
liblzma-dev is already the newest version.
liblzma5 is already the newest version.
============
the CMakeError.log
/usr/bin/cc   -DCHECK_FUNCTION_EXISTS=pthread_create   -L/usr/lib -L/usr/local/lib CMakeFiles/cmTryCompileExec1251144548.dir/CheckFunctionExists.c.o  -o cmTryCompileExec1251144548 -rdynamic -lpthreads
/usr/bin/ld: cannot find -lpthreads
collect2: error: ld returned 1 exit status
CMakeFiles/cmTryCompileExec1251144548.dir/build.make:88: recipe for target 'cmTryCompileExec1251144548' failed
make[1]: *** [cmTryCompileExec1251144548] Error 1
make[1]: Leaving directory '/home/dzh/Documents/video_segment/seg_tree_sample/CMakeFiles/CMakeTmp'
Makefile:114: recipe for target 'cmTryCompileExec1251144548/fast' failed
make: *** [cmTryCompileExec1251144548/fast] Error 2
========
and i check my libthread too.
it works well.
http://stackoverflow.com/questions/24813827/cmake-failing-to-detect-pthreads-due-to-warnings
says it's i bug of cmake.
i follow his suggestion, no magic happen.
i doubt its should be specifiy in CMakeList.txt
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pthread")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pthread")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pthread")
but still don't works.
do i missing something??

Have a look at #9 for a starting point.


fix: panic salt live

Fixes #55

note: delegate update is only called during browsing. It means that when filter is being changed, no items are processed at all.

not a good fix


New header format

Addressing issue #5, as this has now dropped in the latest Canary. Updates middleware, tests and readme.

Awesome, thanks!


tree-sitter-grammars: fix typst grammar on darwin

Description of changes
The latest release tag does not compile on Darwin. This is fixed in upstream master, so update the grammar to an unstable release.
Another fix for #259946 and linked to #259341

Things done

Built on platform(s)

[x] x86_64-linux
[x] aarch64-linux
[x] x86_64-darwin
[x] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

@ofborg test tree-sitter

@ofborg build tree-sitter.passthru.tests


Path display error

There is an error in path displaying on Archlinux.

missing "/" after "~"

display absolute path instead of "~"

What theme are you using?

@mcornella fino

@mcornella other themes also has this problem

@mcornella

I can't reproduce your issue. Is it possible that you have a modified theme? What does echo $PROMPT show? (copy and paste the output)

@mcornella
╭─%{%{%}%}%n%{%} %{%{%}%}at%{%} %{%{%}%}archlinux%{%} %{%{%}%}in%{%} %{%{%}%}${PWD/#$HOME/~}%{%}$(git_prompt_info) %{%{%}%}
╰─$(prompt_char)%{%}

Your $PROMPT looks fine. I don't actually know what's going on... What zsh --version do you have?

zsh 5.6.2 (x86_64-pc-linux-gnu)

What about echo $HOME?

@mcornella
/home/quals

Yeah, see the problem is that $HOME has an extra trailing slash, that's why ${PWD/#$HOME/~} doesn't work. Are you setting $HOME somewhere in your zshrc file?
Most probably though, the home field in /etc/passwd for your user has a trailing slash, when it should be just /home/quals. Please check that out.

https://github.com/robbyrussell/oh-my-zsh/commit/3a6fa9149b7a3db89d22f40ae371ad636f5ed527 fixes this edge case.

@mcornella Thank you! It's so kind of you!


Questions about the implementation in Job.do()

Hello, I am new to this library. While I am digging in the source codes for understanding the usage of this library, I cannot understand this line.
What is the purpose of this line? Why is it necessary even another line do it's job?
Thanks for your time

Hi, nice to hear you were digging through this library! I'm sorry for not seeing this earlier. Is your question still relevant? If so, would you be able to update the links to point to a specific version of the code? The current links point to the master branch, which was updated quite a bit... and so have the line numbers.


Options for group title customization

Description
Basically, an option to disable the bar on the top of a window group(or maybe just some options to customize it)

have you checked the wiki

col.group_border
col.group_border_active
col.group_border_locked
col.group_border_locked_active
group_insert_after_current
render_titles_in_groupbar
groupbar_titles_font_size
groupbar_gradients

have you checked the wiki

damn, I would've sworn I've read through the entire wiki. Thank you though, "render_titles_in_groupbar" is the exact thing I was looking for

please close this issue


Is email notification functional?

When I setup email notifications in a pipeline, Genesis responds with this error:
$ genesis repipe

Verifying availability of vault 'gdc-prod' (https://<IP_ADDRESS>)...ok

ERRORS encountered in pipeline definition in ci.yml:
  - Email notifications are not fully implemented yet.

As an experiment, I commented out the to and from (just to verify the yaml is correct-ish):
$ genesis repipe

Verifying availability of vault 'gdc-prod' (https://<IP_ADDRESS>)...ok

ERRORS encountered in pipeline definition in ci.yml:
  - Email notifications are not fully implemented yet.
  - `pipeline.email.to' is required.
  - `pipeline.email.from' is required.

This suggests that the yaml is correct.
Version:
$ genesis --version
Genesis v2.7.33 (fbcde6230e) build 20210615.063959

In case this matters, this deployment is using the generic kit:
kit:
  name:     generic
  version:  1.0.0

Maybe not? :joy:
https://github.com/genesis-community/genesis/blob/851905f23c630c24600853a8fb0a0b32ca725882/lib/Genesis/CI/Legacy.pm#L277-L278

As you've found, the pipeline email notification feature is not yet fully implemented.
This is due to virtually all enterprise users of Genesis wanting Slack or Shout notifications rather than email.
We don't currently have a spot in our near-term roadmap for implementing email, though we do accept pull requests and would be happy to review one that fully implements email notifications.

I actually found that setting up a personal slack channel was more than sufficient. Closing this one out. Thanks!


Analytical Data Script Clean-Up

Good morning @AaronGullickson
I am still working on the models section of the analysis. I have your models in there currently. However, today I will be working on my own models and looking at those. I went back and cleaned up the uni and bi-variate distributions. This time they are sequenced in an order that allows for the examination of trends in education and race. I left sex in those distributions because it may high lite the issues with measuring religiosity using belief in god and religious attendance.  I also included a three graphs looking at religiosity across education, race, and sex. I know we are not focusing on sex for the final analysis. I am focused on religiosity as influenced by education and race. They show some interesting trends.
The issues I am having at the moment is installing the qualpal package. I looked on line and found it should be installed as qualpalr and then the qualpal command should be available. I have been unable to install that function. I have updated my RStudio and computer. Not sure why it isn't accessible. I still brought color to the graphs though!
I went back in included age in the organize data script. I also noticed I had used the "case_when" function to create age categories. I went back and used the cut command to fix it and got the same results. I hope this was done correctly. I checked and the table produced is the same. I left the old code (commented out with #) so you could see it.
I will be working on the models today. I have your models in the script now for reference. I will be adding and exploring today. Can we reschedule our meeting for tomorrow (Friday, Sept 1) at 3 pm? I want to work on my models more before we meet. This week also had me registering kids for schools.
As always, all work is pushed to Git if you would like to take a peek. I will be adding models this evening.
Thank you,
Kevin Gable

Good morning @AaronGullickson
I added some models of my own. I am also digging through literature today. I had some difficulty in getting the custom coefficients to work without me typing in each category individually. I will do that once the final models are selected. For now, I commented that function out and it is just unpleasant to read. I will see you later today. Thank you again for your support.
Thank you,
Kevin Gable


Create file structure

We need a base to begin solving this application.

Any files from the initial commit needs looking into?


Rerequest: Update add header function

[ErrorException]
SoapHeader::SoapHeader(): Invalid actor
This is the error i get when i don't set the actor.

Fixed in version: <IP_ADDRESS>


add createTokenizerFromConfig, saveTokenizerToConfig, and decode. imp…

…rove marshalling. add tests for bart, roberta, and t5
thanks @gelisam for pairing with me!
recording here: https://www.twitch.tv/videos/1000775134

Nice @tscholak @gelisam! LGTM