text:
Failed to continue from: *.lstm

Environment

Tesseract Version: 4.0.0-beta.1-65-gf8e2
Platform: 16.04.1-Ubuntu

Current Behavior:
Fine Tuning for ± a few characters:
first:
training/combine_tessdata -e tessdata/best/eng.traineddata   ~/tesstutorial/trainplusminus/eng.lstm
second:
training/lstmtraining --model_output ~/tesstutorial/trainplusminus/plusminus   \
--continue_from ~/tesstutorial/trainplusminus/eng.lstm   \
--traineddata ~/tesstutorial/trainplusminus/eng/eng.traineddata  \
--old_traineddata tessdata/best/eng.traineddata   \
--train_listfile ~/tesstutorial/trainplusminus/eng.training_files.txt   \
--max_iterations 3600
result:
Loaded file /root/tesstutorial/trainplusminus/eng.lstm, unpacking...
Failed to continue from: /root/tesstutorial/trainplusminus/eng.lstm
Expected Behavior:
Start Fine Tuning.

Please check that you have read write access to the root directory you are
using.
Make sure that you have the traineddata file from tessdata_best repo to
continue from.
Use wget or similar utility to download and verify file size, to make sure
download was correct.
On Tue 3 Apr, 2018, 7:54 AM GDStephen, notifications@github.com wrote:

Environment

Tesseract Version: 4.0.0-beta.1-65-gf8e2
Platform: 16.04.1-Ubuntu

Current Behavior:
Fine Tuning for ± a few characters:
first:
training/combine_tessdata -e tessdata/best/eng.traineddata
~/tesstutorial/trainplusminus/eng.lstm
second:
training/lstmtraining --model_output
~/tesstutorial/trainplusminus/plusminus
--continue_from ~/tesstutorial/trainplusminus/eng.lstm
--traineddata ~/tesstutorial/trainplusminus/eng/eng.traineddata
--old_traineddata tessdata/best/eng.traineddata
--train_listfile ~/tesstutorial/trainplusminus/eng.training_files.txt
--max_iterations 3600
result:
Loaded file /root/tesstutorial/trainplusminus/eng.lstm, unpacking...
Failed to continue from: /root/tesstutorial/trainplusminus/eng.lstm
Expected Behavior:
Start Fine Tuning.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/tesseract-ocr/tesseract/issues/1447, or mute the
thread
https://github.com/notifications/unsubscribe-auth/AE2_o2x8Aq0Z-6JXvttXsZ-794Ddk6hSks5tkt1tgaJpZM4TEWdh
.

Thks，@Shreeshrii.
I re-download traineddata file with wget from https://github.com/tesseract-ocr/tessdata/raw/master/eng.traineddata, and redo training/combine_tessdata -e tessdata/best/eng.traineddata ~/tesstutorial/trainplusminus/eng.lstm.
When I execute :
training/lstmtraining --model_output ~/tesstutorial/trainplusminus/plusminus \
--continue_from ~/tesstutorial/trainplusminus/eng.lstm \
--traineddata ~/tesstutorial/trainplusminus/eng/eng.traineddata \
--old_traineddata tessdata/best/eng.traineddata \
--train_listfile ~/tesstutorial/trainplusminus/eng.training_files.txt \
--max_iterations 3600

return:
Loaded file /root/tesstutorial/trainplusminus/eng.lstm, unpacking...
Warning: LSTMTrainer deserialized an LSTMRecognizer!
Code range changed from 111 to 111!
Num (Extended) outputs,weights in Series:
  1,36,0,1:1, 0
Num (Extended) outputs,weights in Series:
  C3,3:9, 0
  Ft16:16, 160
Total weights = 160
  [C3,3Ft16]:16, 160
  Mp3,3:16, 0
  Lfys64:64, 20736
  Lfx96:96, 61824
  Lrx96:96, 74112
  Lfx512:512, 1247232
  Fc111:111, 0
Total weights = 1404064
Previous null char=110 mapped to 110
Continuing from /root/tesstutorial/trainplusminus/eng.lstm
Loaded 72/72 pages (1-72) of document /root/tesstutorial/trainplusminus/eng.Garuda.exp0.lstmf
Loaded 72/72 pages (1-72) of document /root/tesstutorial/trainplusminus/eng.Liberation_Sans.exp0.lstmf
Loaded 72/72 pages (1-72) of document /root/tesstutorial/trainplusminus/eng.SimSun.exp0.lstmf
Loaded 72/72 pages (1-72) of document /root/tesstutorial/trainplusminus/eng.NSimSun.exp0.lstmf
!int_mode_:Error:Assert failed:in file weightmatrix.cpp, line 244
Segmentation fault (core dumped)

I re-download traineddata file with wget from
https://github.com/tesseract-ocr/tessdata/raw/master/eng.traineddata
Please use tessdata_best repository for using as continue_from for LSTM
training
You have used tessdata
On Tue 3 Apr, 2018, 11:56 AM GDStephen, notifications@github.com wrote:

Thks，@Shreeshrii https://github.com/Shreeshrii.
I re-download traineddata file with wget from
https://github.com/tesseract-ocr/tessdata/raw/master/eng.traineddata, and
redo training/combine_tessdata -e tessdata/best/eng.traineddata
~/tesstutorial/trainplusminus/eng.lstm.
When I execute :
training/lstmtraining --model_output ~/tesstutorial/trainplusminus/plusminus
--continue_from ~/tesstutorial/trainplusminus/eng.lstm
--traineddata ~/tesstutorial/trainplusminus/eng/eng.traineddata
--old_traineddata tessdata/best/eng.traineddata
--train_listfile ~/tesstutorial/trainplusminus/eng.training_files.txt
--max_iterations 3600
return:
Loaded file /root/tesstutorial/trainplusminus/eng.lstm, unpacking...
Warning: LSTMTrainer deserialized an LSTMRecognizer!
Code range changed from 111 to 111!
Num (Extended) outputs,weights in Series:
1,36,0,1:1, 0
Num (Extended) outputs,weights in Series:
C3,3:9, 0
Ft16:16, 160
Total weights = 160
[C3,3Ft16]:16, 160
Mp3,3:16, 0
Lfys64:64, 20736
Lfx96:96, 61824
Lrx96:96, 74112
Lfx512:512, 1247232
Fc111:111, 0
Total weights = 1404064
Previous null char=110 mapped to 110
Continuing from /root/tesstutorial/trainplusminus/eng.lstm
Loaded 72/72 pages (1-72) of document /root/tesstutorial/trainplusminus/eng.Garuda.exp0.lstmf
Loaded 72/72 pages (1-72) of document /root/tesstutorial/trainplusminus/eng.Liberation_Sans.exp0.lstmf
Loaded 72/72 pages (1-72) of document /root/tesstutorial/trainplusminus/eng.SimSun.exp0.lstmf
Loaded 72/72 pages (1-72) of document /root/tesstutorial/trainplusminus/eng.NSimSun.exp0.lstmf
!int_mode_:Error:Assert failed:in file weightmatrix.cpp, line 244
Segmentation fault (core dumped)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tesseract-ocr/tesseract/issues/1447#issuecomment-378141850,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AE2_o1xmfbf6JVOYJmdMqBb2isLaWPqnks5tkxYUgaJpZM4TEWdh
.

Thks, @Shreeshrii . According to your guidance, I solved the problem.

Can't we retrain using the tesseract_fast model, why I am unable to that? Is there any particular reason.

This issue must be made clear in the wiki. There is no mention of not being able to use tesseract_fast for continuation

I have added the info to wiki - please see
https://github.com/tesseract-ocr/tesseract/wiki/TrainingTesseract-4.00/_compare/f638b9bf123fbe2d90d1ec8116e6593c31b29228...585ae54e5789b26557aa27319145037a96d85a8c

authors: GDStephen Shreeshrii argideritzalpea eravallirao

repo: tesseract-ocr/tesseract


text:
Error out less confusingly when data does not support engine mode

Environment

Tesseract Version: 4.0.0
Commit Number: N/A
Platform: Fedora Rawhide

Current Behavior:
If you have the tessdata_fast data - which is what most distros seem to ship - and you try to use the old engine, you get something like this:
<mock-chroot> sh-4.4# tesseract --oem 0 data/bootmenu-ocr.ref.png testoutput
Failed loading language 'eng'
Tesseract couldn't load any languages!
Could not initialize tesseract.

This is not helpful at all. You have to jump through quite a lot of hoops from there till you get to the text at https://github.com/tesseract-ocr/tessdata_fast which explains "These models only work with the LSTM OCR engine of Tesseract 4."
Expected Behavior:
A less cryptic error.
Suggested Fix:
Surely it should be possible to post a more helpful message explaining that the trained data lacks support for the selected engine, and maybe even explaining that this is commonly the case with packaged distributions of 4.x?

Mohon maaf mata saya kurang baik dan tolong tuntun saya dengan bahasa Indonesia. Saya lagi belajar untuk program ini dari phyton dan Google untuk melindungi keluarga saya. Mohon maaf saya meminta bantuannya untuk dibimbing aplikasi tracker pelacak WhatsApp messenger isteri. Sebelumnya dan sesudahnya terimakasih Python dan tim Github. Sukses selalu buat semua untuk keselamatan dunia teknologi dan informasi.salam hormat

Mohon ijinkan Aplikasi tracker pelacak WhatsApp messenger

Apakah data dan engine dalam sistem handphone saya Xiaomi Mi Max 2 bisa dibantu diperbaiki dengan aplikasi

Apabila tidak bisa, apakah bisa lewat disini tracker WhatsApp messenger memakai no kontak nya

12

Terima kasih pemberitahuan nya, sudah saya hapus sesuai petunjuk. Terus terang saya lagi dalam proses pembelajaran. Sudah 3 Minggu saya belum mendapatkan hasil dalam pembuktian isteri saya kabur dari rumah dan menelantarkan yayasan Anak Asuh panti asuhan, Salam hormat buat semua yang sudah memberikan info

source: gharchive/issue

license_type: permissive

license_source: github-api


text:
RFC: Add examples, Move testing files to test

I have added a folder for examples and added a couple of examples there.
As a precursor to moving files to test repo, I have moved unittest related folders under a new folder called test.
I have left the testing folder as is, since it has phototest.tif and eurotext.tif which have been around for many versions. The newer unittest files have been moved.
@zdenop Please review/test before merging. Thanks.

test should be removed from tesseract-ocr/tesseract to tesseract-ocr/test/

Yes, that is the plan.
I wanted to get feedback regarding 'testing' folder, if that also needs to be moved to the separate test repo.
Also, my understanding is that it will be added back here as a submodule, which you may have to do.

Looking again at comment by @stweil at https://github.com/tesseract-ocr/tesseract/issues/594#issuecomment-383833647
I think he meant only the image and other test related files, not the test sources.
I will make the appropriate changes.

Leaving this open for the time being for  further feedback

My vote is for having test dir inside tess, not outside.
It's a common approach.
Sometimes you cannot find examples of API usage in examples dir and you go straight into test dir to check tests or unittests.

@egorpugin I think the original  intention was to only move the large binaries (image files) to a external repo.
So, it should be just the testdata folder that is be moved outside.
@zdenop may need to rename the new repo as testdata instead of test.

@Shreeshrii : you are not moving files to other repo! you are moving it to other directory.

@zdenop
This is still marked as RFC.
We need to rename the new test repo as testdata.
I can then move all the testdata files there.
We will need to then include testdata repo as submodule in test/testdata.
This way test source files will be under
tesseract/test/tests
tesseract/test/unittest
testdata files will be included as submodule in
tesseract/test/testdata
testing files (phototest.tif and eurotext.tif) + unlv related files will remain in
tesseract/testing
If everyone is in agreement with that, then we can go ahead.

I had suggested to name the new repository test because testdata is very similar to tessdata which might be confusing. In addition to binary files which are used for tests, we could also move the UNLV tests there. All other test code should remain in the tesseract repository.

I had suggested to name the new repository test because testdata is very similar to tessdata which might be confusing.

I agree, the names tessdata and testdata are confusing.
However 'test' seems to be used by other projects (from the little that I have seen)  for test sources also.
How about calling the new repo as testing_data ?

I think the original intention was to only move the large binaries (image files) to a external repo.

Also true. Having heavy files inside main is bad.

source: gharchive/pull-request

authors: Shreeshrii egorpugin stweil zdenop


text:
Override localstack image using TestcontainersConfiguration

Currently using the Localstack module is not possible in a situation where pulling public docker images is not possible.
Testcontainer has a facility to address this, testcontainer.properties, but localstack doesn't take advantage of this.
It would be excellent if this were the case!

Hi @wavetylor. Sure! I think this would be fine.
If you'd like to raise a PR that would be great. I don't think there should be any serious gotchas.
The only thing is that the tag/version part probably belongs in the testcontainers.properties override (i.e. you'd use the no-args constructor), but I expect that was probably your plan anyway.
Please have a glance over any Localstack related issues/PRs we have (e.g. #1504) so that you can get a sense of other forthcoming changes - not because it impacts this change directly, but more so you can be confident that we'll remain compatible with your custom image!

@rnorth sounds good. Already working on the changes.

Nowadays, testcontainers support image name substitution which solves issues like this.
@wavetylor feel free to reopen if I missed something.

authors: eddumelendez rnorth wavetylor

repo: testcontainers/testcontainers-java

license: mit

license_source: bigquery


text:
Proposing Update to index.md - Env Settings for Rancher Desktop

Hello there! I am a technical writer for Rancher Desktop, and am proposing an update to index.md with environment settings for macOS M1 Rancher Desktop installations that I think would be helpful to testcontainers users. Please let me know if you need any more information, thank you.

Thanks for your contribution, @sunilarjun! This section is now live in our docs too. See https://java.testcontainers.org/supported_docker_environment/#rancher-desktop

authors: eddumelendez sunilarjun


text:
make getBootsrapServers() behaviour consistent between 2 classes

In some environments getBootstrapServers returns IP address, which is impossible to parse without a schema via URI.parse() method.
Another class org.testcontainers.containers.KafkaContainer solves this by adding schema PLAINTEXT:// by default.
This PR makes behaviour of getBootstrapServers() consistent.

Hi @sanyarnd, when I was working in the implementation I took a look at the documentation for bootstrap.servers and it mentions A list of host/port pairs. That's the reason why the implementation is different from org.testcontainers.containers.KafkaContainer

In some environments getBootstrapServers returns IP address, which is impossible to parse without a schema via URI.parse() method.

Can you share more about it, please?

Hi @eddumelendez, thanks for your answer. Looking through kafka's code it really seems that schema is irrelevant (urls param corresponds to bootstrap.servers):
public static List<InetSocketAddress> parseAndValidateAddresses(List<String> urls, ClientDnsLookup clientDnsLookup) {
        List<InetSocketAddress> addresses = new ArrayList<>();
        for (String url : urls) {
            if (url != null && !url.isEmpty()) {
                try {
                    String host = getHost(url);
                    Integer port = getPort(url);
                    if (host == null || port == null)
                        throw new ConfigException("Invalid url in " + CommonClientConfigs.BOOTSTRAP_SERVERS_CONFIG + ": " + url);

                    if (clientDnsLookup == ClientDnsLookup.RESOLVE_CANONICAL_BOOTSTRAP_SERVERS_ONLY) {
                        InetAddress[] inetAddresses = InetAddress.getAllByName(host);
                        for (InetAddress inetAddress : inetAddresses) {
                            String resolvedCanonicalName = inetAddress.getCanonicalHostName();
                            InetSocketAddress address = new InetSocketAddress(resolvedCanonicalName, port);
                            if (address.isUnresolved()) {
                                log.warn("Couldn't resolve server {} from {} as DNS resolution of the canonical hostname {} failed for {}", url, CommonClientConfigs.BOOTSTRAP_SERVERS_CONFIG, resolvedCanonicalName, host);
                            } else {
                                addresses.add(address);
                            }
                        }
                    } else {
                        InetSocketAddress address = new InetSocketAddress(host, port);
                        if (address.isUnresolved()) {
                            log.warn("Couldn't resolve server {} from {} as DNS resolution failed for {}", url, CommonClientConfigs.BOOTSTRAP_SERVERS_CONFIG, host);
                        } else {
                            addresses.add(address);
                        }
                    }

                } catch (IllegalArgumentException e) {
                    throw new ConfigException("Invalid port in " + CommonClientConfigs.BOOTSTRAP_SERVERS_CONFIG + ": " + url);
                } catch (UnknownHostException e) {
                    throw new ConfigException("Unknown host in " + CommonClientConfigs.BOOTSTRAP_SERVERS_CONFIG + ": " + url);
                }
            }
        }
        if (addresses.isEmpty())
            throw new ConfigException("No resolvable bootstrap urls given in " + CommonClientConfigs.BOOTSTRAP_SERVERS_CONFIG);
        return addresses;
    }

Seems like another class is in the wrong then.

@sanyarnd can we close this PR, then?

authors: eddumelendez sanyarnd


text:
Cannot install redpanda module from npm

Expected Behaviour
Able to install redpanda module with npm install @testcontainers/redpanda --save-dev as per docs
Actual Behaviour
@testcontainers/redpanda is not in the npm registry, or you have no permission to fetch it.

Released in 10.9.0

authors: cristianrgreco kashive

repo: testcontainers/testcontainers-node

license: MIT


text:
About page 1 WIP

WIP
added hannah's render for background
havent added text yet

There's an issue with the background color. Image doesn't render with a completely white background.

Approved because PR originated from forked repo and wanted to merge it before forked repo was deleted.

authors: capsulecorplab cyunis


text:
After added first symbol cursor jumps to the end masked text for input tag with "textMask" attribute for Angular 6

Hello, everybody!
Can you help me to find a solution to my problem?
My code in stackblitz.com
Then I used this.val = value.replace(/^\ p|\D+/g, ''); I have a problem same:
Text-case:

Given the input with "textMask" attribute with value="0 $"
Given the user set zero cursor position into the input with "textMask" attribute
When the user starts to type "123"
Then the  user sees on screen the input with value="1023 $"

Expected result:
4. Then the  user sees on screen the input with value="1230 $"
I have Angular 6 web app with "angular2-text-mask": "^9.0.0"
I have the next implementation:
HTML component:
<input [(ngModel)]="val" (ngModelChange)="onChange($event)" [textMask]="getTextMask"/>
Component:
import { Component } from '@angular/core';
import { NgModel } from '@angular/forms';
import { TextMaskConfig } from 'angular2-text-mask';

@Component({
  selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: [ './app.component.css' ]
})
export class AppComponent  {
    val: string;

    private onChange = (value: string) => {
      this.val = value.replace(/^\ p|\D+/g, '');
    }

  private get getTextMask(): TextMaskConfig {

    return {
      mask: this.getMaskDol,
      keepCharPositions: false,
      guide: true,
      showMask: true,
    };
  }

  private getMaskDol = (value: string) => {
        const separator: string = ' ';
        const dol = [separator, '$'];
        const cleanValue = value.replace(dol.join(), '').split('.')[0].replace(/\D+/g, '');

        const n = ~~(cleanValue.length / 3);

        if (cleanValue.length === 3 * n) {
            return maskArray(n - 1);
        }

        return maskArray(n);

        function maskArray(k: number) {
            let digits: (RegExp | string)[] = [];
            for (let i = 0; i < k; i++) {
                digits = [...digits, separator, /\d/, /\d/, /\d/];
            }

            return [...Array(cleanValue.length - 3 * k).fill(/\d/), ...digits, ...dol];
        }
    }
}

I am seeing similar behavior running "angular2-text-mask": "^9.0.0" in an angular 7 app.

authors: apasternack pavenkostanislav

repo: text-mask/text-mask

license: Unlicense


text:
refactor(ja-space-after-exclamation): replace match-index with String.prototype.matchAll

Replace match-index with String.prototype.matchAll.
Ref. #55

Thanks!

authors: azu chick-p


text:
Match dates in PDFs

I’m using hazel on the Mac since several years now but I’m attracted to have a platform independent solution like organize. On thing that I use a lot in hazel is date matching in PDFs.
You can define a pattern for a date and tell hazel to use the n th occurrence of a date with this pattern from the beginning or the end and load day, month and year in variables. I use this to get the date when an invoice was written and rename the file accordingly.
Would this be possible with organize?

Yes this is possible with the filecontent filter: https://organize.readthedocs.io/en/latest/page/filters.html#filecontent
But I have to admit writing the regex is not as nice as easy as defining the hazel pattern.

I came here for exactly the same reason (except I use FileJuggler 2 on Windows). Would you consider integrating https://github.com/akoumjian/datefinder to make date-handling easier?
Thanks

I'm no expert but this is the fairly manual solution approach I took to automatically sort files. I couldn't figure out how to "grab the third YY/MM/DD" but I used the echo: '{filecontent}' approach below to get the unique text around the specific date I wanted (e.g., the third one) and made a filecontent rule based on that. Is there a better approach?
config.yaml:
rules:
# Sort Invoices Using File Names and File Content
  - name: "Sort My Invoices"
    locations: ~/Downloads/ #adjust as needed
    subfolders: false #don't look in subfolders
    filters:
      - extension: pdf #the invoice is always a PDF, so only act on PDFs
      - regex: '.{8}-.{4}-.{4}-.{4}-.{12}' #regex for the consistent file name format when the invoice is downloaded from the web; I downloaded several to check the name format is consistent.
      - filecontent: 'Invoice' #whatever text appears in the PDF that differentiates it from other files. this is probably redundant since I am first filtering using a somewhat unique file naming format.
      - filecontent: '(?P<month>[01]\d)\/(?P<day>[0123]\d)\/(?P<year>\d{2})' #finds first instance of MM/DD/YY, assigns "month"/"day"/"year" variables for later use in the file name.
    actions:
      - move:
          # move to proper folder; rename to start with '20' because the file only contains "YY"  and not "YYYY". I want it the file name to be '2024.01.21 Invoice' but the format of the text in the document itself is "01/21/24" so I made those variables and added the "20" in front of the "YY".
          dest: '~/Documents/Invoices/20{filecontent.year}.{filecontent.month}.{filecontent.day} Invoice.pdf'
          on_conflict: 'skip' #skip if there is a conflict

# To see the contents of the file to inform the 'filecontent' filters above, use the below rule to get the raw text.
  - name: "View My Invoice"
    locations: ~/Downloads/test
    subfolders: false
    filters:
      - extension: pdf
      - filecontent
    actions:
      - echo: '{filecontent}'

repo: tfeldmann/organize


text:
Change SetWebhook::new signature

Here
To SetWebhook::new<U>(u: U) -> Self where U: Into<Uri>

SetWebhook field type uri is String (not Uri)

repo: tg-rs/tg-rs


text:
New Region To Exclude for Pairoscope WGS

A region we have seen in both Exome and WGS/WGL samples that should be added to the exclusion list is:
chr8:143,243,200-143,244,000 in MAFA region.
We also might have to extend the one we already have:
from chr8:143,844,450-143,844,750 to chr8:143,844,450-143,844,760

Fixed in the tumorOnly workflows for high coverage capture calling but needs to be fixed for the main version

authors: ChristopheLegendre PedalheadPHX

repo: tgen/phoenix


text:
Fetching custom relation values !

Hey guys, I have following structure, I can get permissions as user.roles.permissions but i want a list combining permissions from all roles on user, is there any possible way to get this working using current bookshelf functionality ?
var User = BBModel.extend({
    tableName: 'users',
    hasTimestamps: ['createdAt', 'updatedAt'],
    permissions: function () {
    // Want to get all the Permissions related to user which are..
    // actually related to Roles by Privilege..
    // Which can be done by following query but this doesn't..
    // resolve to anything when I try to fetch..
    // User with related 'permissions'
        var self = this;
        return this.hasMany('Permission').query(function (qb) {
            qb.innerJoin('privileges', 'permissions.id', 'privileges.permission_id');
            qb.innerJoin('roles', 'privileges.role_id', 'roles.id');
            qb.innerJoin('roles_users', 'roles.id', 'roles_users.role_id');
            qb.innerJoin('users', 'roles_users.user_id', 'users.id');
            qb.where({'users.id': self.id});
        }).fetch();
    },
    roles: function () {
        return this.belongsToMany('Role');
    }
});

var Permission = BBModel.extend({
    tableName: 'permissions',
    roles: function () {
        return this.belongsToMany('Role').through('Privilege');
    }
});

var Role = BBModel.extend({
    tableName: 'roles',
    permissions: function () {
        return this.belongsToMany('Permission').through('Privilege');
    }
});

var Privilege = BBModel.extend({
    tableName: 'privileges',
    permission: function() { return this.hasOne('Permission'); },
    role: function() { return this.hasOne('Role'); }
});

@tgriesser, Any help would be appreciated !

First of all, Privilege model should belong to both Role and Permission, not has one of each of them
var Privilege = BBModel.extend({
  tableName: 'privileges',

  permission: function() {
    return this.belongsTo('Permission')
  },

  role: function() {
    return this.belongsTo('Role')
  }
})

Try this
var User = BBModel.extend({

  tableName: 'users',

  hasTimestamps: ['createdAt', 'updatedAt'],

  /**
   * @returns a promise instead of a relation instance
   */
  permissions: function () {
    var self = this
    return PermissionCollection.query(qb => {
      qb.innerJoin('privileges', 'permissions.id', 'privileges.permission_id')
      qb.innerJoin('roles_users', 'privileges.role_id', 'roles_users.role_id')
      qb.where({'roles_users.id': self.id})
    }).fetch()
  },

  roles: function () {
    return this.belongsToMany('Role')
  }

})

Hope it works

@absolux Thank you so much for the response. I tried what you said, the query knex executes (from the logs), works fine when I manually run on database. But when ran through Bookshelf/knex, it throws this error.
Debug: handler, error
    {"msec":406.71834897994995,"error":"Internal error: Cannot read property 'parentFk' of undefined","data":{"isBoom":true,"isServer":true,"data":null,"output":{"statusCode":500,"payload":{"statusCode":500,"error":"Internal Server Error","message":"An internal server error occurred"},"headers":{}},"isDeveloperError":true}}
Debug: internal, implementation, error
    TypeError: Cannot read property 'parentFk' of undefined
    at EagerRelation.eagerFetch (/Users/dev/d_projects/rx/rx-api/node_modules/bookshelf/lib/eager.js:84:22)
    at EagerRelation.<anonymous> (/Users/dev/d_projects/rx/rx-api/node_modules/bookshelf/lib/base/eager.js:74:33)
    at EagerRelation.tryCatcher (/Users/dev/d_projects/rx/rx-api/node_modules/bluebird/js/main/util.js:26:23)
    at EagerRelation.fetch (/Users/dev/d_projects/rx/rx-api/node_modules/bluebird/js/main/method.js:15:34)
    at _handleEager (/Users/dev/d_projects/rx/rx-api/node_modules/bookshelf/lib/model.js:1351:56)
    at null.<anonymous> (/Users/dev/d_projects/rx/rx-api/node_modules/bookshelf/lib/model.js:685:21)
    at Object.tapHandler (/Users/dev/d_projects/rx/rx-api/node_modules/bluebird/js/main/finally.js:63:31)
    at bound (domain.js:287:14)
    at Object.runBound (domain.js:300:12)
    at Object.tryCatcher (/Users/dev/d_projects/rx/rx-api/node_modules/bluebird/js/main/util.js:26:23)
    at Promise._settlePromiseFromHandler (/Users/dev/d_projects/rx/rx-api/node_modules/bluebird/js/main/promise.js:507:31)
    at Promise._settlePromiseAt (/Users/dev/d_projects/rx/rx-api/node_modules/bluebird/js/main/promise.js:581:18)
    at Promise._settlePromises (/Users/dev/d_projects/rx/rx-api/node_modules/bluebird/js/main/promise.js:697:14)
    at Async._drainQueue (/Users/dev/d_projects/rx/rx-api/node_modules/bluebird/js/main/async.js:123:16)
    at Async._drainQueues (/Users/dev/d_projects/rx/rx-api/node_modules/bluebird/js/main/async.js:133:10)
    at Immediate.Async.drainQueues (/Users/dev/d_projects/rx/rx-api/node_modules/bluebird/js/main/async.js:15:14)
    at Immediate.wrapped [as _onImmediate] (/Users/dev/d_projects/rx/rx-api/node_modules/newrelic/lib/transaction/tracer/index.js:161:28)
    at processImmediate [as _immediateCallback] (timers.js:383:17)
<<< RESPONDING < /users/my < 2016-08-15T10:00:14-04:00 (took 2091) < 1471269612410:Dev-Patels-MacBook-Pro.local:87451:irw3x243:10001
|
  knex:client acquired connection from pool: __knexUid5 +145ms
{ method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '28' ],
  __knexQueryUid: '7e392da5-867a-43aa-9104-d37812c6235e',
  sql: 'select "permissions".* from "permissions" inner join "privileges" on "permissions"."id" = "privileges"."permission_id" inner join "roles_users" on "privileges"."role_id" = "roles_users"."role_id" where "roles_users"."user_id" = ?' }
  knex:query select "permissions".* from "permissions" inner join "privileges" on "permissions"."id" = "privileges"."permission_id" inner join "roles_users" on "privileges"."role_id" = "roles_users"."role_id" where "roles_users"."user_id" = ? +3ms
  knex:client releasing connection to pool: __knexUid5 +317ms

@dvp0, permissions() doesn't return a relation object, so you cannot use it for eager loading.
following is possible,
usr.permissions().then(collection => { ... })

but not this
User.fetch({ withRelated: 'permissions' }).then(...)

Aaah, I can live with that. You are the man @absolux, thanks 👍🏼

repo: tgriesser/bookshelf


text:
🛑 DDoS-Relay US-E-ash-1 is down

In cad3129, DDoS-Relay US-E-ash-1 (http://5.161.250.73:42069/;csv) was down:

HTTP code: 0
Response time: 0 ms

Resolved: DDoS-Relay US-E-ash-1 is back up in faba11a after 7 minutes.

repo: tgstation-operations/status


text:
🛑 DDoS-Relay US-E-ash-1 is down

In 99398e5, DDoS-Relay US-E-ash-1 (http://5.161.250.73:42069/;csv) was down:

HTTP code: 0
Response time: 0 ms

Resolved: DDoS-Relay US-E-ash-1 is back up in 6ea5d66 after 5 minutes.


text:
If during tests with Android and connect we have a failure we lose the port

If we lose the port and call connect again we will get already connected and never get the port back. We have to maintain the port itself.

So let's be very clear on the scenario.

We have called connectToPeerPromise and it successfully returned. Because if it didn't successfully return then we never got a connection.
From there we will call clientSuccessConnect who will call connectToListenerSendMessageGetResponseLength. What's interesting is that all paths from that function call result in the connection to the native layer being closed either via destroy() or end(). This applies to both success and failure.

So the point is that even if we have a failed connection on Android, it won't matter because we will tear down the TCP link to the native layer which will cause us to tear down the bluetooth socket which means the next connect request should get a new port.
So there is no need to remember the port at all.
Am I missing something?

Yes, this is related with a new test in vNext_aaladev_1242.
ClientRound._connectToPeer = function (peer) {
  var data = {};
  data.promise = new Promise(function (resolve, reject) {
    data.resolve = resolve;
    data.reject  = reject;

    Mobile('connect').callNative(peer.peerIdentifier, ... });
  }
  return data;
}

ActiveConnections can reject this promise with timeout.

authors: andrew-aladev yaronyg


text:
The SSL handshake failure made a re-appearance

Repro:

Clone aaladev_1356_yarong
Set 'jx' to point at v0.3.1.5 Spider Monkey (NOT V8! V8 crashes instantly)
After doing usual set up go to test/www/jxcore and run 'jx runCoordinatedTests.js --filter bv_tests_/testThaliManagerCoordinated.js'

If you do this a bunch of times then eventually you'll see:
2016-10-21 22:51:28 - DEBUG thaliReplicationPeerAction: 'Got error on replication -  500 140735249612800:error:14077102:SSL routines:SSL23_GET_SERVER_HELLO:unsupported protocol:../deps/openssl/openssl/ssl/s23_clnt.c:726:
'

2016-10-21 22:51:28 - DEBUG thaliPeerPoolOneAtATime: 'action returned with error from startError: 140735249612800:error:14077102:SSL routines:SSL23_GET_SERVER_HELLO:unsupported protocol:../deps/openssl/openssl/ssl/s23_clnt.c:726:
 - Action ID: 25, Action Type: ReplicationAction, Connection Type: tcp, Peer Identifier: BLEA5pScH_iqY_srYBZkpa9C_Qa-FfjYjDXa6JikgvaLw6IdCjOqhaTIsatheG6lhSbiHnxCof2VNKYv0KbaXIs'

We are getting closer to figuring this out. We can see that this is the result of a data pass from JXcore to OpenSSL. Aren't clear if this is a memory corruption or a code flaw.

The SecureContext is created in jxcore:
https://github.com/thaliproject/jxcore/blob/master/src/wrappers/node_crypto.cc#L159-L165
JS_METHOD(SecureContext, New) {
  SecureContext* p = new SecureContext();
  JS_CLASS_NEW_INSTANCE(obj, SecureContext);
  p->Wrap(obj);
  RETURN_POINTER(obj);
}
JS_METHOD_END

The SecureContext is associated to the connection:
https://github.com/thaliproject/jxcore/blob/master/src/wrappers/node_crypto.cc#L1223-L1242
JS_METHOD(Connection, New) {
  Connection* p = new Connection();
  JS_CLASS_NEW_INSTANCE(obj, Connection);

  p->Wrap(obj);

  if (args.Length() < 1 || !args.IsObject(0)) {
    THROW_EXCEPTION("First argument must be a crypto module Credentials");
  }

  SecureContext* sc =
      ObjectWrap::Unwrap<SecureContext>(JS_VALUE_TO_OBJECT(GET_ARG(0)));

  bool is_server = args.GetBoolean(1);

  p->ssl_ = SSL_new(sc->ctx_);
  p->bio_read_ = BIO_new(BIO_s_mem());
  p->bio_write_ = BIO_new(BIO_s_mem());

  SSL_set_app_data(p->ssl_, p);

  ...

}
JS_METHOD_END

The SecureContext is passed to SSL_connect:
https://github.com/thaliproject/jxcore/blob/master/src/wrappers/node_crypto.cc#L1716-L1735
JS_METHOD(Connection, Start) {
  Connection* ss = Connection::Unwrap(args.GetHolder());

  if (!SSL_is_init_finished(ss->ssl_)) {
    int rv;
    if (ss->is_server_) {
      rv = SSL_accept(ss->ssl_);
      ss->HandleSSLError("SSL_accept:Start", rv, kZeroIsAnError, kSyscallError);
    } else {
      rv = SSL_connect(ss->ssl_);
      ss->HandleSSLError("SSL_connect:Start", rv, kZeroIsAnError,
                         kSyscallError);
    }

    RETURN_PARAM(STD_TO_INTEGER(rv));
  }

  RETURN_PARAM(STD_TO_INTEGER(0));
}
JS_METHOD_END

The SecureContext passed to SSL_connect was retrieved using args.GetHolder() to
get the connection object:
https://github.com/thaliproject/jxcore/blob/master/src/jx/Proxy/Mozilla_340/PArguments.cc#L22-L26
void *PArguments::GetHolder() {
  MozJS::Value val(JS_THIS(ctx_, jsval_), ctx_);

  return val.GetPointerFromInternalField(0);
}

GetHolder calls GetPointerFromInternalField that calls the SM API JS_GetPrivate:
https://github.com/thaliproject/jxcore/blob/master/src/jx/Proxy/Mozilla_340/MozJS/MozValue.cc#L590-L609
void *Value::GetPointerFromInternalField(const int index) {
  INNER_VALUE_TO_OBJECT(object_, false);
  JSObject *object_ = object_rt;

  JS::RootedObject ret_val(ctx_);
  if (object_ != nullptr) {
    if (!JS_HasReservedSlot(object_, GC_SLOT_GC_CALL) &&
        !JS_HasPrivate(object_)) {
      // perhaps this object was created on JS land
      // add a property that can trigger the event when the base
      // object is GC'ed
      Natify(object_rt, false, &ret_val);
      object_ = ret_val;
    }
  }

  if (object_ == nullptr) return nullptr;

  return JS_GetPrivate(object_);
}

https://github.com/thaliproject/jxcore/blob/master/deps/mozjs/src/jsapi.cpp#L2269-L2274
JS_PUBLIC_API(void *)
JS_GetPrivate(JSObject *obj)
{
    /* This function can be called by a finalizer. */
    return obj->getPrivate();
}

The SecureContext retrieved from the unwrapped object (returned by SM) contains the corrupted data.

When the SSL error occurs, the following connection attempts succeed, the reason is that after the error the connection is closed and new connections are created, with a new connection the Secure Context is recreated.

The PSK code was always passing values to the TLS layer wrong. But by a miracle most of the time this didn't cause a failed connection, but sometimes it does. So we have to fix the PSK code.

https://github.com/thaliproject/Thali_CordovaPlugin/blob/aaladev_1356_yarong/thali/NextGeneration/replication/thaliReplicationPeerAction.js#L207-L220
Thali uses the secureOptions attribute assuming that jxcore won't use it, but it does.

So the bug is caused by our work around to thaliproject/Thali_CordovaPlugin#730 so we have to fix that bug.

@yaronyg when #730 is fixed we need to test again jxcore with the same test, since during debugging we noticed two things that we don't know if they were caused by #730:

in the SSL handshaking there were too many requests coming from the client (I don't think it's caused by #730 but we didn't really investigate it so it's just a guess that is not related to #730).
the secureOptions attribute was always overwritten with random values, most of the times the values were not causing the SSL error just by chance, but in one particular case the value was way off and causing the SSL negotiation to fail. We need to make sure that the value that was causing the error was indeed produces by #730 and not by another bug that somehow is hidden by the #730 issue.

We believe we fixed this when we fixed the bugs in secureOptions.

authors: enricogior yaronyg


text:
We need to update build process in setUpTests.sh due to error.

The build itself fails with error error: exportArchive: No applicable devices found.
When we try build project in Xcode (7.3.1), it builds correctly.

Closed as dup of #1770


text:
how to get InceptionInference.java

question as the title!

@yony228 Sorry for the delay.
If you are still stuck, have a look at the comment https://github.com/thammegowda/tensorflow-grpc-java/issues/4#issuecomment-332998720
I am going to close this issue. If you are still working on it, please open it. I will be happy to help!

repo: thammegowda/tensorflow-grpc-java


text:
Ruler: "Drop" rule don't drop whole alert

Hello,
we are moving alerting from prometheus to ruler and we have met the problem on ruler while we have tried to drop metrics with label "is_alert" warning which we don't want to distribute to alertnamager.
For this purpose we using relabel rule with action drop like this:
- source_labels: [is_alert]
  regex: 'warning'
  action: 'drop'

Result of drop action wasn't as we expected. We are thought it will result in drop of whole alert. But rule dropped all labels from alert, than sent malformed alert to alertmanager. Alertmanager refused accept alert without labels which results in error which is whiten to log on both sides.
Ruler:
level=warn ts=2022-05-10T04:57:23.924170069Z caller=alert.go:343 component=rules msg="sending alerts failed" alertmanager=xxxx.xxx.xxx:9093 alerts="[{\"labels\":{},\"annotations\":{\"class\":\"xxxxx\",\"description\":\"this is description\"},\"startsAt\":\"2022-05-10T04:50:53.610739404Z\",\"endsAt\":\"2022-05-10T04:55:53.610739404Z\",\"generatorURL\":\"http://localhost:11001/graph?g0.expr=........\"}]" err="bad response status 400 Bad Request from \"http://xxxxxxxxxx:9093/api/v1/alerts\""

Alertmanager:
ts=2022-05-10T04:57:23.894Z caller=api.go:791 level=error component=api version=v1 msg="API error" err="bad_data: at least one label pair required;"

So we reached main goal, alert is not succesfully delivered from ruler to alertmanager. But we don't feel well about unwanted traffic between ruller and alertmanager and logs which is full of large errors.
Same solution with same "drop" rule between prometheus and alertmanager works corectly and prometheus drops whole alert.
If we doing something wrong, we would appreciate a little help to go the right way.

Thanos, Prometheus and Golang version used:
Build Information
| version   | 0.26.0                                   |
| revision  | 17c576472d80972bfd3705e1e0a08e6f8da8e04b |
| branch    | HEAD                                     |
| buildUser | root@95d2db822102                        |
| buildDate | 20220505-12:53:36                        |
| goVersion | go1.17.9                                 |

This is a valid bug. I opened a fix pr https://github.com/thanos-io/thanos/pull/5377 just now. Thanks for reporting!

repo: thanos-io/thanos


text:
Git: ignore vscode settings

Signed-off-by: arthur yang yang_yapo@126.com
Ignore vscode settings for better IDE exprience.

Consider just setting up global ignore file on your computer https://help.github.com/en/github/using-git/ignoring-files#configuring-ignored-files-for-all-repositories-on-your-computer instead of doing this PR

Consider just setting up global ignore file on your computer https://help.github.com/en/github/using-git/ignoring-files#configuring-ignored-files-for-all-repositories-on-your-computer instead of doing this PR

Thanks. Will close this PR.


text:
Dataset is unavailable

The link to the dataset can not be used, can you please upload the dataset or a link that can help?

Hi, I am not the author of BeautyGAN, so I do not process the MT dataset. Please refer to https://github.com/VinAIResearch/CPM/issues/11#issuecomment-912403455 for further information.


text:
Broken in Chef 12.11, recommend knife data bag --local-mode now this project is dead

The following made Chef 12.10.54 (unreleased) stop working with knife-solo_data_bag.
https://github.com/chef/chef/compare/v12.10.53...v12.10.54
Since Chef local-mode has supported local editing of data bags since I think 11.8, I don't think this gem is needed anymore.
Local mode can be induced alternatively via adding to knife.rb:
local_mode true

The issue with that is that local_mode reads from your knife.rb and uses the chef-repo.  'knife solo data bag' is still helpful If you keep data bags in test/integration for kitchen and want the ability to modify encrypted data bags.

Can you confirm you are still having issues with the latest version of this gem (>=2.0)?
Please use local_mode true in your config when testing, thanks.

authors: andytson-inviqa drspeedo joeyates


text:
feat: add initial website

Fixes #24

:tada: This PR is included in version 0.19.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

repo: the-codegen-project/cli


text:
[ERROR] Undefined variable: output

Laravel Version: 5.4.*
Voyager Version: 1.0
PHP Version: 5.6.4
Database Driver: MySQL

So did a clean install of laravel with voyager and when trying to create a admin I get the following error when trying to fill in a password

Any idea why?

I don't think we have a variable named output in that command... seems really odd, but might be an issue with laravel. If anyone else has time to dig into this, I'd appreciate it

do a clean install of laravel 5.5 and install voyager after a composer update. if you facing error still.try to load dummy data instead

Did another clean install and loaded it in with dummy data which worked fine, but running php artisan voyager:admin .... --create still causes the same undefined variable error at password.
I also tried it on a different windows PC, mac machine and different CLI's but no luck.

@FlorisBoom im using the latest of laravel and voyager and i just tried it out.. i get no error like that. i have no idea about that output variable.. could be some issue on your end.

@SamSolomon0611 Laravel 5.5 need php 7.0.0 .
https://laravel.com/docs/5.5
Can you try it with newer php version?
Also check if you are meeting all the requirements.

@vaggelis2018
So I just tried doing it locally using laravel 5,4 instead of doing it on the shared hosting server and everything went fine. So the problem has to be related with the shared hosting I guess.

@FlorisBoom Ask your host provider if all requirements are referenced in the link i sent you in the previous commemt are met

@vaggelis2018  All of the requirements for laravel 5.4 are met, since I'm using the shared hosting provided by my school I can't change the php version so using laravel 5.5 wont work. So it's basically out of my reach. Ill just have to work around it by exporting and importing databases from my localhost to the shared hosting.
Thx for the help anyways, and uhmm I don't know how to close issues yet so if someone would be so kind to... :D

repo: the-control-group/voyager


text:
The correct way to upgrade an existing voyager installation

Laravel Version: 5.5.16
Voyager Version: v1.0.15
PHP Version: 7.2
Database Driver & Version: xx

Description:
Is there a correct way to upgrade my current voyager installation ? or just upload and replace would do , know that i have some views overridden
Steps To Reproduce:
upgrade

You can take a look at our upgrading guide. Even though it is not very extensive (we are working on that). If you have overwritten some views, take extra care.

The correct way is to upgrade it locally, test thoroughly, then push changes through whatever CI process you may have

authors: fletch3555 ixenox vblinden


text:
Can we send email when admin add user?

Laravel Version: 5.5.*
Voyager Version: Last v.
PHP Version: 7.*
Database Driver & Version:

Description:
Help Request
I am trying to send e-mail to user when admin add user.
For example: Welcome "$user->name", your username is "$user->username" and your password is "$user->password". I tried every thing. But can not send any email. Do we have a way to make this e-mailing system easier? How can i intervene the Userpage in Adminpanel?

You dont want to change the userpage.
You are looking for Eloquent Events

@emptynick  would be great if there is an example integrating into voyager ?

Its this simple:
public static function boot() {
    parent::boot();

    static::created(function($user) {
        //Send your mail
    });
}

@emptynick  is this related to  https://github.com/the-control-group/voyager/blob/1.0/src/Events/BreadAdded.php ?

No, my example is native Eloquent. Its simpler, and fits better in this case in my opinion.

Closing as solution was provided.

authors: JFOC aozen emptynick


text:
php artisan stopped working

Version information

Laravel: v5.6.x
Voyager: v1.1.x
PHP: 7.2.1
Database: [mysql] [5.7.x]

Description
After configuring https url() by the guide of Using HTTPS on your site, I encountered the php artisan stopped working with the error message of below:
Steps To Reproduce
In UrlGenerator.php line 111:

Argument 2 passed to Illuminate\Routing\UrlGenerator::__construct() must be an instance of Illuminate\Http\Request, null given, called in /home/user/code/myproject/vendor/laravel/framework/src/Illuminate/Routing/RoutingServiceProvider.php on line 61

using asset() or url() helpers caused the problem. Instead, giving absolute path solved the issue.


text:
Portfolio Section

Close by #12

repo: theachoem/theachoem


text:
Support argcomplete v2

Closes #563.

@Tolker-KU Updated.

Thanks @jwodder

authors: FollowTheProcess jwodder

repo: theacodes/nox


text:
feat: Add new componentes to allow profile edition

Description
WIP

@FedeMadoery If the transaction of editing profile is still failing here, we may need to wait for the contracts fix first

The fixes for the contracts are deployed, it should work fine, cc @FedeMadoery @ramabit

authors: Agupane FedeMadoery ramabit

repo: thebadge/thebadge-dapp


text:
Should examples use something other than hostname?

If I understand correctly, using hostname() as the lock id would mean that multiple execution paths on the same host could both own the lock. This is bad (typically) right? It should be somehow operation-specific, like a guid or something.

Yeah probably.  Feel free to update the README with a PR

authors: djMax thebigredgeek

repo: thebigredgeek/microlock


text:
Hexacore Claim passive mode

HI the Hexacore game do not auto claim rewards (about 12h). Can you add this in the future

Hi,
The box is set to claim if available when the Hexagon is ready for clicking. In general, we do not intend to support any side missions, as they introduce additional steps that can go wrong. Each time the game developer changes the format, we have to revisit the game to remap the clicks.
However, since we have already added the function to click the lucky box for this one, we will amend the timing mechanism and upload it. :)

authors: bscongluanbui thebrumby

repo: thebrumby/HotWalletClaimer


text:
9400 add date search filter

Adds a date search filter to the responses view, using react-dates.
Updating dates in the filter will update the URL, and entering dates via the text search input will be parsed and appropriately handled in the filter.
If multiple dates are entered in the search input, the widest range of dates will be used.

I think this is good to go. The remaining failing specs seem like flapping specs.

UX review! Overall the functionality is awesome. Just some stylistic tweaks:

Please make the height and font size of the input fields the same height as in the question drop down:

Please make the select color in the component the NEMO blue and light blue as opposed to the default green

Dark color: $accent-color
Light color: $light-blue

Please align the apply button so it is on the same line as the fields

@cooperka There are some failing snapshots, a bunch of failed propType warnings, and a bunch of deprecation warnings when the JS tests are run. Could you clean these up please and take a quick look at the React code here to ensure it meets your standards?

@smoyth I pushed several tweaks, I recommend reading commit messages and reviewing once more before merge. Happy to discuss any questions.
Question for you: why the addition of stylesheet_pack_tag + extract_css (https://github.com/thecartercenter/nemo/commit/0e05c3b6423961c14a9be952bd4ea5fd12e65e8a), is it because there's CSS bundled with the new datepicker component that needs to be pulled into the main bundle?

authors: cooperka jpdimond sdroadie smoyth

repo: thecartercenter/nemo


text:
12492: fix rendering to XML if there's a disabled cascading select questioning

scenario:

form has a cascading (multilevel) select that's disabled
DelayedJob tries to render the form to XML automatically

result:

undefined method 'body_tags' for nil:NilClass

fix:

don't attempt to render non-existent child

note that BOTH the if and else eventually attempt to use visible_children[0], but they only currently check if there are children and not whether the children are visible. this code logic is extremely complex and branching, but the fix here is likely safe.
tested and verified using the prod form linked from the redmine issue (screenshots not uploaded for privacy reasons).

Looks good to me kevin, thank you!

authors: cooperka jpdimond


text:
switch from setup.cfg to pyproject.toml?

will probably be a little bit of a process and may not be supported by everything but would probably make it easier in the long run

https://github.com/john-hen/Flake8-pyproject if we want to move flake8 over too, or use a wrapper like flakehell

repo: thecnoNSMB/ktane-mission-solver


text:
[FEATURE] Simple task/todo feature, {branch: dev}.

Detailed description
👉Installation Guide 👈

You also can implement this in multiple issues/pr
As of now we only need this feature for a single user instead of workspace
Design Layout: as of now, only todo for single user, in next issue will add more features requests, we can divide this issue into several issues.

Context
This will help user to mange their own tasks/todo
Possible implementation
No response
Additional information
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

hey @TandinDev
thanks for contributing to this community
if u like, can u work on this issue to?
we just have to make simple todo design as of now, not that complex showed in above given example image
let me know if u are interested
thank you.

Is this issue still open ?
As its creation date is in 2023, if its open then please assign it to me I can do it.

@swarupn17 i have assigned this to you, let me know if you have any questions

repo: thecyberworld/TheCyberHUB


text:
Changing state during update causes next state to double fire

This is because update fires before coroutines are updated, which is used to enter the state.
Current work around, use lateupdate instead.
Ultimately need to make some design decisions around if Update can run while an enter coroutine is active. Start() in unity doesn't block Update? So maybe we just need a flag we can check to see if there are coroutines running.

Lost whole day today trying to figure out what's wrong with my code. Thanks for the info. Great piece of code, anyway!

This is now fix, in that changing state during StateName_Update() and StateName_LateUpdate() will no longer cause this behaviour.
However this is still possible to cause similar issues when the state change is effected from outside the StateMachine convention, as described here:
https://github.com/thefuntastic/Unity3d-Finite-State-Machine/issues/5

authors: thefuntastic tosiabunio


text:
add mimic_2_survival_analysis notebook

Add MIMIC-II survival analysis Notebook

This is ready, right?

authors: Zethson xinyuejohn

repo: theislab/ehrapy-tutorials


text:
NameError: name 'NeighborsView' is not defined when export spring project

First of all, thank you for your great platform!
When I try to export a SPRING project I get the following error (it seems that the class NeighborsView is not defined; I have a 'neighbors' key in .uns):

sc.external.exporting.spring_project(adata, '/Users/mariusmessemaker/Documents/Project/mempel/SPRING', 'X_umap', subplot_name='Mempel', cell_groupings=['State', 'ImmGen', 'Biological replicate'],
                                     custom_color_tracks=None, total_counts_key='nCount_RNA', neighbors_key='neighbors', overwrite=False)

AnnData object with n_obs × n_vars = 8757 × 20679
    obs: 'SeqRun', 'Biological replicate', 'nCount_RNA', 'nCount_SCT', 'nFeature_RNA', 'nFeature_SCT', 'novelty', 'orig_ident', 'percent_mt', 'sc_leiden_res_48.75', 'State', 'ImmGen'
    var: 'Selected', 'sct_detection_rate', 'sct_gmean', 'sct_residual_mean', 'sct_residual_variance', 'sct_variable', 'sct_variance'
    uns: 'Biological replicate_colors', 'ImmGen_colors', 'State_colors', 'leiden', 'neighbors', 'state'
    obsm: 'X_pca', 'X_umap'
    varm: 'pca_feature_loadings'
    layers: 'norm_data', 'scale_data'
    obsp: 'connectivities', 'distances'

NameError                                 Traceback (most recent call last)
<ipython-input-208-9f15be957dd9> in <module>
      1 sc.external.exporting.spring_project(adata, '/Users/mariusmessemaker/Documents/Project/mempel/SPRING', 'X_umap', subplot_name='Mempel', cell_groupings=['State', 'ImmGen', 'Biological replicate'],
----> 2                                      custom_color_tracks=None, total_counts_key='nCount_RNA', neighbors_key='neighbors', overwrite=False)

~/miniconda3/envs/py36-sc/lib/python3.6/site-packages/scanpy/external/exporting.py in spring_project(adata, project_dir, embedding_method, subplot_name, cell_groupings, custom_color_tracks, total_counts_key, neighbors_key, overwrite)
    179
    180     # Write graph in two formats for backwards compatibility
--> 181     edges = _get_edges(adata, neighbors_key)
    182     _write_graph(subplot_dir / 'graph_data.json', E.shape[0], edges)
    183     _write_edges(subplot_dir / 'edges.csv', edges)

~/miniconda3/envs/py36-sc/lib/python3.6/site-packages/scanpy/external/exporting.py in _get_edges(adata, neighbors_key)
    217
    218 def _get_edges(adata, neighbors_key=None):
--> 219     neighbors = NeighborsView(adata, neighbors_key)
    220     if 'distances' in neighbors:  # these are sparse matrices
    221         matrix = neighbors['distances']

NameError: name 'NeighborsView' is not defined

Versions:

scanpy==1.5.0 anndata==0.7.1 umap==0.4.1 numpy==1.18.1 scipy==1.4.1 pandas==1.0.3 scikit-learn==0.22.2.post1 statsmodels==0.11.1 python-igraph==0.8.2 louvain==0.7.0 leidenalg==0.8.0

Thanks for finding this, fixed on master.

Great thanks!

Hello, I am running into exactly the same bug when using both scanpy-1.5.1 or scanpy-1.5.0.
Versions:
scanpy==1.5.1 anndata==0.7.3 umap==0.4.3 numpy==1.18.4 scipy==1.3.2 pandas==1.0.4 scikit-learn==0.23.1 statsmodels==0.11.1 python-igraph==0.8.2 leidenalg==0.8.0
Input:
import time t0 = time.time() sc.external.exporting.spring_project(adata, './SPRING',                             'umap', subplot_name='all', overwrite=True, cell_groupings=['leiden'],                                     custom_color_tracks=['total_counts']) print(time.time() - t0)
Output:
`WARNING:root:Overwriting the files in SPRING.
Writing subplot to SPRING\all
NameError                                 Traceback (most recent call last)
 in
1 import time
2 t0 = time.time()
----> 3 sc.external.exporting.spring_project(adata, './SPRING',
4                             'umap', subplot_name='all', overwrite=True, cell_groupings=['leiden'],
5                                     custom_color_tracks=['total_counts'])
~\Anaconda3\envs\sfn-workshop\lib\site-packages\scanpy\external\exporting.py in spring_project(adata, project_dir, embedding_method, subplot_name, cell_groupings, custom_color_tracks, total_counts_key, neighbors_key, overwrite)
179
180     # Write graph in two formats for backwards compatibility
--> 181     edges = _get_edges(adata, neighbors_key)
182     _write_graph(subplot_dir / 'graph_data.json', E.shape[0], edges)
183     _write_edges(subplot_dir / 'edges.csv', edges)
~\Anaconda3\envs\sfn-workshop\lib\site-packages\scanpy\external\exporting.py in _get_edges(adata, neighbors_key)
217
218 def _get_edges(adata, neighbors_key=None):
--> 219     neighbors = NeighborsView(adata, neighbors_key)
220     if 'distances' in neighbors:  # these are sparse matrices
221         matrix = neighbors['distances']
NameError: name 'NeighborsView' is not defined`

repo: theislab/scanpy


text:
Plot genes without highly_variable_genes

I'm new to scanpy, and I want to plot umap with some genes.
In this tutorial, it's written below

sc.pl.umap(adata, color=['CST3', 'NKG7', 'PPBP'])

But, I could show only highly variable genes, because other genes were discarded by the code below

adata = adata[:, adata.var.highly_variable]

So, how can I plot umap with genes without highly variable? How can I leave all genes in anndata?

You can keep the genes in adata.raw, make a copy of the anndata object (adata_old = adata.copy()) before subsetting, or give the hvg one a new name like adata_hvg = adata[:, adata.var.highly_variable].copy()

OK, I try it. Thank you so much.

authors: amufaamo davidhbrann


text:
Go through list in reverse order in shift

In the shift method of the List class, the memory is iterated starting at the 0 index. This forces the code to have a separate previous variable so data is lost.
If instead the loop started iterating from the end of the memory, it wouldn't have to have this extra variable:
for(var address = this.length; address <= 0; address++) {
    this.memory[address] = this.memory[address - 1];
}
this.memory[0] = value;

(or something like that) Sorry I couldn't make a proper PR; I'm not currently in a good environment for that.

The algo seems perfectly correct ...The error could arise due to for loop
for (var address = 0; address < this.length; address++) {       // replacing the "current" value with the "previous" value and storing the       // "current" value for the next iteration.       var current = this.memory[address];       this.memory[address] = previous;       previous = current;     }

The algo is fine. However error can occur in for loop.
For the last iteration in loop memory is trying to access an element out of list .
The condition for loop should be  address<this.length-1
for (var address = 0; address < this.length-1; address++) {      this.memory[address] = this.memory[address + 1];     }

repo: thejameskyle/itsy-bitsy-data-structures


text:
Emails do not send.

unserialize(): Error at offset 0 of 162 bytes
Error whenever sending emails. All templates contain inline PHP unserialize() commands. I have no idea the purpose of these.

I'm not closing this just yet. @thekordy why unserialize?

Please refer to #8

Ah makes sense. I wonder why status_notification is the only unserialize that doesn't work? It only doesn't work when changing status using the Complete Ticket button on v0.2.0

Regardless, I re-implemented it into v0.2.0 until we can fix that one item.

authors: FusionDesign thekordy

repo: thekordy/ticketit


text:
Added private comments and improved time worked output

Reversed comment order to show newest comments first
Comments marked private are not viewable by clients, only agents and admins
Added color to non-private comments so they are clearly visible
Private comments don't email an update to the client
Total work time now displays total hours and minutes instead of just minutes

This PR is beautiful, there is only the private comment condition needs adjustment.


text:
Article resolvers return both Article and Draft type objects

Tasks

[x] Article resolvers return both Article and Draft ,  at the same time most Article fields' resolvers assume that their parents are Draft

References

Slack
https://github.com/thematters/matters-server/issues/2952

root-resovler
editArticle
toggleASubscribeArticle
appreciateArticle
readArticle
toggleArticleRecommend
updateArticleState
Topic.latestAricle
Topic.articles
CircleContentAnalytics.Public
CircleContentAnalytics.Paywall
ArticleNotice.target
ArticleActicleNotice.target
ArticleActicleNotice.article
ArticleTagNotice.article
Appreciation
Chapter.articles
ReadHistory
UserAddArticleTagActivity
UserPublishArticleActivity
ArticleRecommendationActivity.nodes
ResponseEdge
Transaction.target
Recommendation.readTagsArticle
Recommendation.newest
Recommendation.hottest
Recommendation.icymi
User.articles
User.commentedArticles
User.subscription
OSS.articles
Draft.article
Draft.collection
Circle.works
Tag.articles
Article.collectedBy
Article.collection
Article.relatedArticles
Article.relatedDonationAricles

All resolvers return draft correctly,  except  Draft.article

repo: thematters/matters-server


text:
I'm using Nextjs. Separating the theme config makes tailwind not work.

The way I did it, tailwind worked.
1 I write tailwind first, such as bg-blue-500 hover:bg-blue-600 in the div, then the button config section with this color will work.
2 I take the part Put the configuration in page.tsx and the configuration will work.
This is code in github https://github.com/bank188950/flowbite-test.git
Below is the code that has the problem.
----- [pase.tsx]
import { Flowbite, Button } from 'flowbite-react';
import { customTheme } from '@/configs/customTheme';
export default function Home(): React.ReactElement {
return (
<Flowbite theme={{ theme: customTheme }}>
Click me 1
Click me 2
Click me 3
  <Button color="warning">Click me 4</Button>

1111

1111

2222

3333

</Flowbite>

);
}
----- [customTheme.ts]
import type { CustomFlowbiteTheme } from 'flowbite-react';
export const customTheme: CustomFlowbiteTheme = {
button: {
base: 'focus:!ring-0 dark:focus:!ring-0',
color: {
primary: 'bg-sky-500 hover:bg-yellow-600',
secondary: 'bg-blue-500 hover:bg-blue-600',
accent: 'bg-orange-500 hover:bg-orange-600',
neutral: 'bg-gray-500 hover:bg-gray-600',
info: 'bg-blue-500 hover:bg-blue-600',
success: 'bg-green-500 hover:bg-green-600',
warning: 'bg-yellow-500 hover:bg-yellow-600',
error: 'bg-red-500 hover:bg-red-600',
'base-1': 'bg-light-green hover:bg-gray-200',
'base-2': 'bg-gray-300 hover:bg-gray-400',
'base-3': 'bg-gray-500 hover:bg-gray-600',
},
},
};

this is code in github https://github.com/bank188950/flowbite-test.git

From
import { customTheme } from '@/configs/customTheme';
The solution is to put this code in tailwind.config.ts
"./src/configs/*.{js,ts,jsx,tsx,mdx}",
const config: Config = {
content: [
"./src/pages//*.{js,ts,jsx,tsx,mdx}",
"./src/components//.{js,ts,jsx,tsx,mdx}",
"./src/app/**/.{js,ts,jsx,tsx,mdx}",
"./src/configs/.{js,ts,jsx,tsx,mdx}",
"./node_modules/flowbite/**/.js",
"./node_modules/flowbite-react/lib/esm/**/*.js",
],
theme: {
extend: {
colors: {
"light-green": "var(--light-green)",
green: "var(--green)",
"dark-green": "var(--dark-green)",
},
},
},
plugins: [require("flowbite/plugin")],
};
export default config;

Hey there, I'm not really following this - what exactly is going wrong?

I assume he is pointing the fact that unless he places the path of customTheme.ts in the tailwind.config.js content, custom theme is not working.

authors: SutuSebastian bank188950 tulup-conner

repo: themesberg/flowbite-react


text:
🛑 Homepage is down

In 167e044, Homepage (https://themonetizr.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Homepage is back up in 78b0ddc.

repo: themonetizr/upptime


text:
🛑 Monetizr API is down

In d04ffed, Monetizr API (https://api3.themonetizr.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Monetizr API is back up in 2474c9e.


text:
Update dependencies to latest

otherwise you get an error when running npm start

Sorry, I posted this in the wrong repo. I will move it to the skeleton repo of tom quirk

repo: theocodes/vue-brunch


text:
Add an "ignore list" of people I don't want to convert messages for

Mostly salespeople on linkedIn
Why? So I don't get "person not found" for people I know about and don't want added/tracked
Similar to .gitignore

Could be a flag inside people.json to ignore


text:
[IMPROVEMENT] - Clean tipbot tip messages after a set duration

What would you like improved?
After a period of time, (15min?), clear the inline tipbot confirmation messages when sending a tip.
Improvement
It seems that the tipbot messages are there to indicate a successful transfer, but after they are read, they served its purpose. Beyond that, for record keeping, a message is also sent in the DM.
Should a public way to indicate a tip is sent be still desired, a cleaner way could be to add an emoji to the person tipping when it's been complete.

Closed with #21 removing messages after initial time frame for most bot messages.

repo: theqrl-community/tipbot


text:
demo?

I am sure its awesome code but any demo so i can see what it actually does? thx

+1

Basically what it does is giving you an simple way to login, no content management except for some profile details, name, lastname and such. the content is all up to you, you get some files that is permission based that is checking against a database if you admin or not and from that information checks if you are allowed access to see the page content or not. and that's it.
No demo needed,  it's straight forward to try it on your own machine.
If you're running Windows, install Wamp and try the code there.
If you're running Mac,  install Mamp and try the code there.
If you're running Linux, Install Lamp and try the code there.

great thanks for the explain. i will check your docs to see how to get it
working with Wamp.
On Tue, Mar 26, 2019 at 2:43 PM Mattias Magnusson notifications@github.com
wrote:

Basically what it does is giving you an simple way to login, no content
management except for some profile details, name, lastname and such. the
content is all up to you, you get some files that is permission based that
is checking against a database if you admin or not and from that
information checks if you are allowed access to see the page content or
not. and that's it.
No demo needed, it's straight forward to try it on your own machine.
If you're running Windows, install Wamp and try the code there.
If you're running Mac, install Mamp and try the code there.
If you're running Linux, Install Lamp and try the code there.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/therecluse26/PHP-Login/issues/226#issuecomment-476679088,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AdPj93dFilfo5K1NLpeEKk3-rDUELrtpks5vajIfgaJpZM4barR0
.

authors: Glen-Dango mattish91 qublibjohnny


text:
Add RSS for news

There are a lot of articles published both by SHL & HA that would be very nice to have in an RSS feed.

There is now a "proper" rss feed we should link, eg https://www.leksandsif.se/artiklar.rss

repo: theseal/hockey-mchockeyface


text:
Refactor signing key generation?

#128 seems to be an example of the flaw in current RepositorySimulator signing key & signature management:

The design is optimized for minimal test code: this leads to signing metadata (apart from root) at request time
The keys are created (in multiple places) with  CryptoSigner.generate_ecdsa() because ecdsa keys are fast to generate: this way each test simply generates whatever keys it needs

Unfortunately ecdsa signatures are not deterministic so the combination of these two features can easily lead to issues that are difficult to debug.
Obvious options to fix this include:

start explicitly signing metadata -- I would still like to avoid this if possible
switch to a deterministic signature by default

I think I lean to option 2, we should at least try this with another keytype:

ed25519 is maybe not a great option, I'm not sure if every client has support for that. RSA is likely the right default
the issue with RSA is the key generation time: in the long term we should not generate keys in every test

as the initial implementation we can try generating keys in tests like now, if it's not horribly slow
we could also include a list of ~20 hard coded keys in sources and have RepositorySimulator take keys from the list (keys are also generated in test_updater_key_rotations.py and test_keys.py: these should likely use the same source for key material)

start explicitly signing metadata

the upside of this is that we could more easily test e.g. #134

I would still like to avoid this if possible

Is this because of UX? - that it is simpler to write tests?

Yeah: I was expecting most tests to modify targets metadata (which is currently very easy), but I'm beginning to think the benefits may not be greater than the disadvantages... The fact that modifying root is different from other roles is already annoying.
I'd be happy to see a refactoring that does explicit signing in a clean way, but I have a feeling that's a large change -- at the very least it will touch every single test, and the repository http API will change slightly (as currently we return 404 on "old" version requests but if we have the old versions stored we would logically return them when asked). Would be nice to get the hashes/length length in metafiles issue solved first (as that's currently actually broken and means our test results are partly incorrect).
We could do both options: first the second option (hard code RSA keys), and then look at a explicit signing refactoring .
Opinions @AdamKorcz ?

hard code RSA keys

alternative that has less hard coded key material would be to generate 20 signers once in conftest.py and pass a copy of the list to all RepositorySimulators when they are created

Just writing down some notes on the "make RepositorySimulator sign explicitly" idea

keep mds dictionary for storing the "current metadata"
remove signed_roots, add signed_mds: dict[str, list[bytes]] where key is rolename
remove publish_root() and bump_root_by_one(),  add something like publish(role: str, bump_version: bool = True) that makes a copy of roles current metadata from mds, signs it, adds bytes to signed_mds
fetch_metadata now looks up data only from signed_mds (and can return old versions):
There's plenty of potential test changes, every test needs to be reviewed:

any test that modifies any targets role likely needs to publish(role) at least once
same for any tests that modify timestamp or snapshot without calling update_*() afterwards
old metadata versions are now available from repository (this is more realistic so sounds good)
anything else?

I agree it seems like a good move but seems like quite a bit of work and potential bugs: this is why I suggested changing the default keytype so that we would have less bugs in code to begin with

Quick test with rsa keys shows some issue with go-tuf... see https://gist.github.com/jku/5262baefeb705663999a43a7cf412bfc

Quick test with rsa keys shows some issue with go-tuf... see https://gist.github.com/jku/5262baefeb705663999a43a7cf412bfc

It seems go-tuf has an issue with RSA-PSS: luckily we actually wanted RSA-PKCS anyway (since we're looking for reproducible signatures)
This seems to work:
-        signer = CryptoSigner.generate_ecdsa()
+        signer = CryptoSigner.generate_rsa(scheme="rsa-pkcs1v15-sha256")

I'll take this to try the "quick fix" (RSA keys by default): let's see about the refactor afterwards

I changed this issue to be about the quick fix (use rsa keys) and filed #155 for the refactor

authors: AdamKorcz jku

repo: theupdateframework/tuf-conformance


text:
Lightbox enhancements / minor bugs

These came up in testing of 360 image page but actually apply on all page types

[x] Allow customisation of lightbox background opacity (& colour?) at project &/or page level
[ ] When project is shown at fixed size rather than full screen the lightbox fills & is centred on whole screen rather than just project area

Closing this as I don't think the second point about not having the lightbox centred (even when LO is fixed size) is actually desirable

repo: thexerteproject/xerteonlinetoolkits


text:
Button TitleView shows quesionmark

I installed the pod with:
pod 'FontAwesome.swift', :git => 'https://github.com/thii/FontAwesome.swift'
I'm importing:
import FontAwesome_swift;
...and I am setting the titleview. The 'cell.addButton' is a common UIButton:
cell.addButton.setTitle(String.fontAwesomeIcon(name: FontAwesome.plus), for: .normal);
This is showing me a questionmark. I added FontAwesome.otf to the project and to my plist to be sure, but according to the documentation this shouldn't be necessary.
I'm using Swift 3.0 and I'm running the project with an iPhone SE.

You have to update the font of the label. Setting the font will display the correct character. Keep in mind that every character is just an hex-code represented within an font. If that code doesn't exist, the character can not be represented.
See: https://developer.apple.com/reference/uikit/uilabel/1620532-font


text:
AWS mapper for thin-edge.io

Currently, thin-edge.io does not offer any integration with AWS IoT Core to send measurements or other telemetry to and from AWS IoT Core services.
Solution ideas:

thin-edge.io could have a mapper component similar to the Azure IoT and Cumulocity mapper, which could register the device with AWS IoT Core (also by using certificates) and map from thin edge JSON to the AWS specific format (if this exists)

Alternatives:

One could use AWS Greengrass with an MQTT extension to achieve that but not sure if this is a good option also AWS IoT provides DEvice SDKs which could be used

@itsyitsy do you know if any of the current users would be interested in working on this ?


text:
[Question] Edge widgets error

Component

UI
Rule Engine
Generic

Description
The widgets are not working after throwing the below error. Is there a way to clear this error from the edge database? Here are some of the observations:

The edge and cloud are synchronized and able to communicate.
Any changes made from the cloud are updated to the edge.
The issue seems to be related to widgets.
The edge is producing the same errors even though all the Devices, Assets, Rule Chains, and Dashboards are unassigned. The root rule chain is also disabled from the input node.
Tried to upgrade the edge pe version from 3.5.1.1PE to 3.6.0PE, but was unsuccessful.
The same setup has been running for 1-2 months. I am not sure why, but it recently caused an issue after upgrading the cloud version to 3.6.0.
Could it be related to this issue? Link
Please check the edge and postgres logs below.
tb-postgres-logs.txt
tb-edge-logs.txt

tb-edge  | org.springframework.dao.DataIntegrityViolationException: could not execute statement; SQL [n/a]; nested exception is org.hibernate.exception.DataException: could not execute statement
.
.
.
tb-edge  | 2023-10-17 22:02:47,645 [grpc-default-executor-0] WARN  o.h.e.jdbc.spi.SqlExceptionHelper - SQL Error: 0, SQLState: 22001 tb-edge  | 2023-10-17 22:02:47,645 [grpc-default-executor-0] ERROR o.h.e.jdbc.spi.SqlExceptionHelper - ERROR: value too long for type character varying(255) tb-edge  | 2023-10-17 22:02:47,646 [grpc-default-executor-0] INFO  o.h.e.j.b.internal.AbstractBatchImpl - HHH000010: On release of batch it still contained JDBC statements tb-edge  | 2023-10-17 22:02:47,647 [grpc-default-executor-0] ERROR o.t.s.s.c.DefaultDownlinkMessageService - Can't process downlink message [downlinkMsgId: 1732855390
Here is the widgets screenshot

Environment

OS:  Ubuntu 22.04.3 LTS
ThingsBoard Edge PE: 3.5.1.1 PE

@akseerali,
Thank you for raising this issue.
Indeed, some widgets on the edge break when an older version of the edge is connected to the cloud version 3.6. This is because the edge syncs with the cloud to get the most recent widget configurations. With the 3.6 release, widgets underwent significant changes, making older versions of the edge incompatible with the new cloud widgets.
Can you please upgrade your edge to the latest 3.6 version?
I noticed you mentioned encountering errors during the update - could you share details about those errors?

Hi @volodymyr-babak
We have again tried to update the ThingsBoard edge version, but it showed the same error.
Please find attached the logs obtained while upgrading the ThingsBoard Edge PE from version 3.5.1.1 to version 3.6.0.
Please share any information on how to cope with this issue. Thanks
upgradation logs for 3.6.0 - v1.0.txt

@akseerali,
Kindly refer to this upgrade guide:
https://thingsboard.io/docs/user-guide/install/pe/edge/upgrade-instructions/#ubuntucentos-36
I suspect you might be using the wrong command. Please ensure you use the following:
sudo /usr/share/tb-edge/bin/install/upgrade.sh --fromVersion=3.5.1

Hi @volodymyr-babak
Thank you for the hint.
Somehow the edge was not upgraded from v3.5.1.1 to v3.6.0, but it updated the version number in the ".upgradeversion" file.
The upgrading issue has been resolved by first manually changing the version from 3.6.0 to 3.5.1 from docker container, and then upgrading the edge to v3.6.0 by following this link.
The issue with the widgets has also been successfully resolved. Thanks

authors: akseerali volodymyr-babak

repo: thingsboard/thingsboard-edge


text:
Added image for video preview

Added image for video preview - "Fuel level monitoring'.

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

authors: CLAassistant geronimo-ua


text:
[WIP] Performance tests k8s aws

PR Checklist

[ ] No broken links found using link-checker.

Linkchecker
Use the following command to check the broken links.
docker run --rm -it ghcr.io/linkchecker/linkchecker --check-extern http://172.16.1.16:4000

Modify 'increasing replication factor up to 3' step of Cassandra update to run repair after each 'ALTER KEYSPACE *** WITH REPLICATION'.

TS_KV_PARTITIONING: "INDEFINITE" # MONTHS. It's safer to set to MONTHS from the begging.

Latest versions of thirdpary services:

postgresql 11.8.1
kafka 22.1.6
cassandra 10.4.5
zookeeper 11.4.10
redis 8.6.12

This is not available anymore:
--set postgresqlImage.debug=true
--set pgpoolImage.debug=true \

replaced by:
--set postgresql.image.debug=true
--set pgpool.image.debug=true \

update --set postgresql.replicaCount=2 \  to --set postgresql.replicaCount=3 \

update --set pgpool.extraEnvVars[1].value='postgresql-postgresql-0,postgresql-postgresql-1' \ to   --set pgpool.extraEnvVars[1].value='postgresql-postgresql-0,postgresql-postgresql-1,postgresql-postgresql-2' \

authors: smatvienko-tb volodymyr-babak


text:
Fix: Null terminate buffer in 03_fs_readsync

log_report() and log_info() expect a null terminator,
which is not provided by the current code.  This code
adds that null terminator.
This fixes the following learnuv issue:
https://github.com/thlorenz/learnuv/issues/13

Thanks merged e931a79001fa4c5544e981d3450dad42e6b03899

authors: coderkevin thlorenz

repo: thlorenz/learnuv


text:
🛑 Ateas repo is down

In cfe893a, Ateas repo (https://atea.bunnpris.no/$ikl_secret_path/index.html) was down:

HTTP code: 404
Response time: 573 ms

Resolved: Ateas repo is back up in f3fdb6e.


text:
Error: one bright and one good image in alternation

Fresh install today of v0.8.1 .. now got one bright and one good image in alternation for the first few images after reboot.
Then its fine for some images, but when a darker or little brighter one follows, it restarts again with these extreme exposures. Seems like the auto exposure value calculated from every image (physically stored somewhere?) is going nuts.
Hint: i use a -very- large resolution with a 20 MPx camera (ASI183MC / 5496*3672 px) .. exceeding any limits?
Any idea how to fix or which setting causes this?

@Tartouffe the limit only applies to auto exposure, not manual exposure.
Aaah. So when i turn autoexposure off i can use it up to 75s?
...wondering myself. Made screenshots of the settings screen before i made the update and there were autoexposure ON - and the 75s images worked. But when its only this option ... easy to switch off to get my 75s night images again. :)
Videos-Dir
Hm, then there must be a glitch at the ftp settings. All versions are having (on the webserver) a videos dir. Misspelled that 'webdir' fact. Anyway, the ftp copying routine has some hicup:
Images and video dir is set at the ftp-settings 'LOCAL' as:
IMAGE_DIR="/home/SkyCamWeb/allsky/"
The remote directory where the timelapse video should go.
VIDEOS_DIR="/home/SkyCamWeb/allsky/videos/"
VIDEOS_DESTINATION_NAME=""
WEB_VIDEOS_DIR=""
[ some lines below: MP4DIR="${VIDEOS_DIR}"  - this is the one i have to use for target path]
All files (MP4, keno, images, startrails) were stored inside and below the daily images-dir.
But the videos were not copied/moved to the place as set above, the videos-dir, which exists on the allsky webpages as an extra directory.
(BTW: whats the difference between videos dir and web videos dir?)

Hello,
I am having  the same issue here. Any updates on how to fix it?

@jsanchez73 try the version of capture.cpp we just uploaded.  If that still gives problems let me know (and include the log file).  I'm working on a version that dampens the changes by implementing an "aggression" setting.  Foe example, it will only make half the expected change in brightness rather than the full change.  I'm also trying to detect wild swings in brightness and deal with them.

Trying out the updated capture.cpp. But it is (very) bad weather. Had to wait for sun, to reach some brightness level. Could go a few days until I have a result. (Note: version 0.8 expure has the same problem)

@Tartouffe, are you saying version 0.8 is causing your bad weather?????  We are working on a cloud-removal filter :-)
Are you running with the version exposure mon ON or OFF?
Selse reported good results with 0.8 exposyee ON, but I realize not everyone can run with it ON.

"Version 0.8 Exposure" was OFF, now ON.
Had tested this (set ON) with the version before, no difference.
Lets see what the latest capture.cpp will produce over the day tomorrow with now switched on.

@Tartouffe, please increase your Debug Level to 3 in the WebUI.  It will give me much-needed information, like what was happening with the dark/bright images.
The "stutter" in your GIF is because some images were being skipped due to ASI_ERROR_TIMEOUTs even though you are using the older version 0.7 exposure algorithm.  Try decreasing your USB Bandwidth to 40.
The strangest image is the one that doesn't include the overlay.  I have no idea how that can happen.

First debug level 3 run with the parameters: USB Bandwidth: 40 / debug Level 3 / Version 0.8 Exposure: YES
A too bright image was shot at timecode 15:17:59. Only one. I had to run it on brighter sky (when your "clear sky automation" is working error free ;) ).
I noticed when a bright image was produced, an image in the set Intervall is missing!
E.g. every 1min one picture, the bright image is 2 minutes old/er, the one-minute-before it is missing. After the bright one, the time Intervall gets a few seconds longer. But also keep an eye on the time Intervall of the Images.
But had to reproduce/prove this on better conditions.
For now the sky makes no sense. For the next run at brighter weather i will set it to 60000ms per image for better calculation, wheather there is really a frame before the bright one missing. Then it could be a cumulation of some values or variables.
Attached the log. Timecode of the wrong one: see above.
Meanwhile: waiting for better sky.
allsky.log

Eric, you know what? NOT A SINGLE overexposed picture since the modified parameters 3 day ago. I think the default USB value of 80 (if i remember right?) causes these bright images. Now with 40 the images are how they should be. Also no frames were missing.
Had to prove this on bright weather. Will keep you updated (waiting for bright sky/sunshine).

@Tartouffe, that's great to hear.
The brightness of the sky appears to have been changing quite a bit.  The mean brightness of the picture before 15:17:59 was 81 which is below the acceptable range, then the 15:17:59 picture's mean was 129 which is inside the acceptable range.  The next several pictures had mean of 124 - 134 which are all in the allowed range.
If those pictures were way too bright you may want to move the histogram box to include more of the sky.

@Tartouffe, is it still working well?  If so, would you please close this issue?  Thanks.

Sunny weather didn't happend these days, so i can't proof it by 100%. But with reduced USB bandwidth no more brigthness issues. It has to be that.
Thanks for the patience identifying this issue. :)
So if you got some too bright images, reduce the USB bandwidth.
I will close here.

authors: EricClaeys Tartouffe jsanchez73

repo: thomasjacquin/allsky


text:
🛑 Syncthing-KA-TM is down

In 0a24e86, Syncthing-KA-TM ($URL_SYNCTHING_MERZ_NIMBUS_TM) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Syncthing-KA-TM is back up in 0c3e659.

repo: thomasmerz/upptime


text:
Support for CR5 robot

Added for CR5 robot

The URDF is adapted from here
The robot itself is this

Outputs
Inverse Kinematics
python examples/learn_kinematics_of_cr5.py

Iteration: 0 | Loss: 0.27768784761428833
Iteration: 100 | Loss: 0.1107632964849472
Iteration: 200 | Loss: 0.07561298459768295
Iteration: 300 | Loss: 0.05557335540652275
Iteration: 400 | Loss: 0.0417577363550663
Iteration: 500 | Loss: 0.031214609742164612
Iteration: 600 | Loss: 0.02316567674279213
Iteration: 700 | Loss: 0.017140034586191177
Iteration: 800 | Loss: 0.01269041933119297
Iteration: 900 | Loss: 0.00941857136785984
Iteration: 1000 | Loss: 0.00700660003349185
Iteration: 1100 | Loss: 0.0052213771268725395
Iteration: 1200 | Loss: 0.003895306494086981
Iteration: 1300 | Loss: 0.0029081180691719055
Iteration: 1400 | Loss: 0.0021730754524469376
Iteration: 1500 | Loss: 0.0016262102872133255
Iteration: 1600 | Loss: 0.0012193787842988968
Iteration: 1700 | Loss: 0.0009162251953966916
Iteration: 1800 | Loss: 0.0006895340629853308
Iteration: 1900 | Loss: 0.0005192119861021638
Iteration: 2000 | Loss: 0.00039059470873326063
Iteration: 2100 | Loss: 0.00029303712653927505
Iteration: 2200 | Loss: 0.00021882193686906248
Iteration: 2300 | Loss: 0.00016232155030593276
Iteration: 2400 | Loss: 0.00011938028183067217
Iteration: 2500 | Loss: 8.688597881700844e-05
Iteration: 2600 | Loss: 6.24672684352845e-05
Iteration: 2700 | Loss: 4.428840838954784e-05
Iteration: 2800 | Loss: 3.0914230592316017e-05
Iteration: 2900 | Loss: 2.121005491062533e-05
parameters of the ground truth model (that's what we ideally learn)
gt trans param: <function DifferentiableRigidBody.__init__.<locals>.<lambda> at 0x7f17e45477a0>
gt trans param: <function DifferentiableRigidBody.__init__.<locals>.<lambda> at 0x7f17e454a560>
parameters of the optimized learnable robot model
_bodies.1.trans.param: Parameter containing:
tensor([[ 0.000, -0.000, -0.000]], requires_grad=True)
_bodies.1.rot_angles.param: Parameter containing:
tensor([[    -0.000,     -0.002,     -0.332]], requires_grad=True)
_bodies.2.trans.param: Parameter containing:
tensor([[-0.015,  0.043,  0.144]], requires_grad=True)
_bodies.2.rot_angles.param: Parameter containing:
tensor([[ 1.080,  1.536, -0.158]], requires_grad=True)
_bodies.3.trans.param: Parameter containing:
tensor([[-0.426,  0.013,  0.025]], requires_grad=True)
_bodies.3.rot_angles.param: Parameter containing:
tensor([[-0.002, -0.001, -0.028]], requires_grad=True)
_bodies.4.trans.param: Parameter containing:
tensor([[-0.357,  0.001,  0.168]], requires_grad=True)
_bodies.4.rot_angles.param: Parameter containing:
tensor([[0.010, 0.006, 0.154]], requires_grad=True)
_bodies.5.trans.param: Parameter containing:
tensor([[ 0.004,  0.001, -0.008]], requires_grad=True)
_bodies.5.rot_angles.param: Parameter containing:
tensor([[-0.063, -1.569, -0.093]], requires_grad=True)
_bodies.6.trans.param: Parameter containing:
tensor([[ 0.105, -0.001,  0.121]], requires_grad=True)
_bodies.6.rot_angles.param: Parameter containing:
tensor([[ 0.054, -0.222,  0.026]], requires_grad=True)

Inverse Dynamics
python examples/learn_dynamics_cr5.py

Iteration: 0 | Loss: 164300.20656738282
Iteration: 1 | Loss: 19225.77536621094
Iteration: 2 | Loss: 5486.174859619141
Iteration: 3 | Loss: 8055.3539016723635
Iteration: 4 | Loss: 3748.7200271606443
Iteration: 5 | Loss: 2764.610902404785
Iteration: 6 | Loss: 1349.3833786010741
Iteration: 7 | Loss: 545.9442825317383
Iteration: 8 | Loss: 285.38169250488284
Iteration: 9 | Loss: 168.14591865539552
Iteration: 10 | Loss: 78.25277905464172
Iteration: 11 | Loss: 36.334597539901736
Iteration: 12 | Loss: 18.99049961566925
Iteration: 13 | Loss: 15.596345591545106
Iteration: 14 | Loss: 14.524810338020325
Iteration: 15 | Loss: 14.256498098373413
Iteration: 16 | Loss: 13.883037352561951
Iteration: 17 | Loss: 13.685445189476013
Iteration: 18 | Loss: 13.332061219215394
Iteration: 19 | Loss: 12.94166682958603
Iteration: 20 | Loss: 12.506692934036256
Iteration: 21 | Loss: 12.112999904155732
Iteration: 22 | Loss: 11.700679302215576
Iteration: 23 | Loss: 11.308581960201263
Iteration: 24 | Loss: 10.907157671451568
Iteration: 25 | Loss: 10.532639920711517
Iteration: 26 | Loss: 10.147715264558792
Iteration: 27 | Loss: 9.785290229320527
Iteration: 28 | Loss: 9.416745448112488
Iteration: 29 | Loss: 9.070198369026183
Iteration: 30 | Loss: 8.719940587878227
Iteration: 31 | Loss: 8.39060656428337
Iteration: 32 | Loss: 8.061581352353096
Iteration: 33 | Loss: 7.751388740539551
Iteration: 34 | Loss: 7.44527787566185
Iteration: 35 | Loss: 7.155463248491287
Iteration: 36 | Loss: 6.873130634427071
Iteration: 37 | Loss: 6.6044184267520905
Iteration: 38 | Loss: 6.345931971073151
Iteration: 39 | Loss: 6.098854067921638
Iteration: 40 | Loss: 5.863617044687271
Iteration: 41 | Loss: 5.638598826527596
Iteration: 42 | Loss: 5.425293147563934
Iteration: 43 | Loss: 5.222540545463562
Iteration: 44 | Loss: 5.0299526959657666
Iteration: 45 | Loss: 4.8483658760786055
Iteration: 46 | Loss: 4.676064419746399
Iteration: 47 | Loss: 4.5138744711875916
Iteration: 48 | Loss: 4.361286669969559
Iteration: 49 | Loss: 4.216873079538345
_bodies.1.inertia.mass.l: Parameter containing:
tensor(1.499, device='cuda:0', requires_grad=True)
_bodies.1.inertia.inertia_mat.param: Parameter containing:
tensor([[-0.029, -0.218,  0.057],
        [-0.108, -0.140,  0.040],
        [ 0.084, -0.072, -0.078]], device='cuda:0', requires_grad=True)
_bodies.1.trans.param: Parameter containing:
tensor([[-0.060,  0.018, -0.086]], device='cuda:0', requires_grad=True)
_bodies.2.inertia.mass.l: Parameter containing:
tensor(1.508, device='cuda:0', requires_grad=True)
_bodies.2.inertia.inertia_mat.param: Parameter containing:
tensor([[-0.122, -0.056, -0.029],
        [-0.030, -0.106, -0.076],
        [-0.600,  1.353,  0.789]], device='cuda:0', requires_grad=True)
_bodies.2.trans.param: Parameter containing:
tensor([[0.110, 0.033, 0.096]], device='cuda:0', requires_grad=True)
_bodies.3.inertia.mass.l: Parameter containing:
tensor(-1.585, device='cuda:0', requires_grad=True)
_bodies.3.inertia.inertia_mat.param: Parameter containing:
tensor([[-0.035, -0.045, -0.065],
        [ 0.008, -0.207,  0.088],
        [-0.241, -0.209,  0.329]], device='cuda:0', requires_grad=True)
_bodies.3.trans.param: Parameter containing:
tensor([[-0.482, -0.028,  0.012]], device='cuda:0', requires_grad=True)
_bodies.4.inertia.mass.l: Parameter containing:
tensor(-1.187, device='cuda:0', requires_grad=True)
_bodies.4.inertia.inertia_mat.param: Parameter containing:
tensor([[-0.182,  0.052, -0.043],
        [-0.075,  0.036, -0.019],
        [-0.636, -0.349,  0.656]], device='cuda:0', requires_grad=True)
_bodies.4.trans.param: Parameter containing:
tensor([[-0.305,  0.013, -0.072]], device='cuda:0', requires_grad=True)
_bodies.5.inertia.mass.l: Parameter containing:
tensor(0.763, device='cuda:0', requires_grad=True)
_bodies.5.inertia.inertia_mat.param: Parameter containing:
tensor([[-0.070,  0.038, -0.041],
        [ 0.062,  0.054,  0.166],
        [ 0.030, -0.129,  0.005]], device='cuda:0', requires_grad=True)
_bodies.5.trans.param: Parameter containing:
tensor([[ 0.017, -0.051,  0.018]], device='cuda:0', requires_grad=True)
_bodies.6.inertia.mass.l: Parameter containing:
tensor(-0.285, device='cuda:0', requires_grad=True)
_bodies.6.inertia.inertia_mat.param: Parameter containing:
tensor([[-0.003,  0.182,  0.079],
        [-0.074, -0.111,  0.006],
        [-0.052,  0.023,  0.007]], device='cuda:0', requires_grad=True)
_bodies.6.trans.param: Parameter containing:
tensor([[-0.044,  0.149,  0.564]], device='cuda:0', requires_grad=True)


text:
Install.sh doesn't clean up old docker images

Older docker images are left without deletion.  This would fill the SD cards after multiple updates.  This also applies to volumes.

Yeah -- agreed. I should probably do a docker image prune at the end.
Moving this to fermentrack-tools as that's where the install script lives to track against.

authors: cdnninja thorrak

repo: thorrak/fermentrack


text:
Allow User model to be reloaded in development

When a user_model is configured in a Clearance initializer, a reference
to that class is immediately saved off. If that class is changed, Clearance
will not know to automatically reload the class as Rails does automatically
for classes in development.
This change introduces a to_prepare block to the Engine that is
responsible for forcing the configured user class to be reloaded.
to_prepare runs once per request in development and only at startup in
other environments.

Nice! :)
Nitpicking: Rails::Railtie::Configuration#to_prepare defines generic callbacks to run before #after_initialize (not necessarily on every request). The ActionDispatch::Reloader#to_prepare callbacks are run before each request.

The ActionDispatch::Reloader#to_prepare callbacks are run before each request.

That seems to be the context we're in inside that to_prepare block for the Engine.

You are calling the config.to_prepare in a class extending the Railtie::Engine. That would be: http://api.rubyonrails.org/classes/Rails/Railtie/Configuration.html#method-i-to_prepare. When i was experimenting i found that the reload triggered on every model class change but not necessarily on every request.

Was not sure how to test if reloading was working and looked over the engine. This spec tests if the callback has been configured, which might be enough if you can rely on Rails to properly call them:
  describe "#reload_user_model" do
    it "expect reload_user_model to be called on framework reload" do
      expect(Clearance::Engine.config.to_prepare_blocks).to include(&:reload_user_model)
    end
  end

I thought about that too. At that point I'm just guarding against someone deleting the to_prepare block. I wouldn't be testing actual behavior. I'm hopeful people will read documentation or git history for the impacted lines and think that's higher value than this particularl test.

It seems my tests for reload_user_model are non-deterministic, so I'll need to spend a bit more time here.

authors: derekprior sanderhahn

repo: thoughtbot/clearance


text:
Update README.md

Update the reference in the README to @ccallebs forked (and updated) version of the AWS-SES gem (https://github.com/ccallebs/griddler-amazon_ses)
The original gem is no longer supported (and does not support Rails 5+).

Thanks!

repo: thoughtbot/griddler


text:
Update reference email

This should spare @croaky any unsolicited support requests.

@croaky you're still listed as the first author, but as you're not reading that email any longer I wanted to update. LMK if you'd rather I change to point to a different email for you.

repo: thoughtbot/parity


text:
Limit not working

I can't use limits on the unioned clauses:
SELECT
  songs.id AS searchable_id,
  'Song' AS searchable_type,
  songs.title AS query
FROM songs
LIMIT 10

UNION

SELECT
  artists.id AS searchable_id,
  'Artist' AS searchable_type,
  artists.name AS query
FROM artists
LIMIT 10

Error:
rake aborted!
StandardError: An error has occurred, this and all later migrations canceled:

PG::SyntaxError: ERROR:  syntax error at or near "UNION"
LINE 8: UNION
        ^
: CREATE VIEW "sitewide_searches" AS SELECT
  songs.id AS searchable_id,
  'Song' AS searchable_type,
  songs.title AS query
FROM songs
LIMIT 10

UNION

SELECT
  artists.id AS searchable_id,
  'Artist' AS searchable_type,
  artists.name AS query
FROM artists
LIMIT 10;

Fixed, had to add parenthese around the SELECTs

repo: thoughtbot/scenic


text:
[ISC] The texts aren't displayed properly

Have no idea why the characters are too big, is there a solution?

Nevermind, ROCO2017 has fixed it earlier.

repo: thpatch/thcrap

license: unlicense