Can not use cctalk parser

Summary of Problem
Hi! I try to use cctalk parser, but unsuccessful.
(Please answer all 3)

What are you trying to do?
Hi! I try to use cctalk parser, but unsuccessful.

What happens?
I got an error

const parser = port.pipe(new CCtalk())
                             ^

ReferenceError: CCtalk is not defined
    at Object.<anonymous> (/home/user/tst/custom/index.js:11:30)
    at Module._compile (module.js:652:30)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Function.Module.runMain (module.js:693:10)
    at startup (bootstrap_node.js:188:16)
    at bootstrap_node.js:609:3

Code to Reproduce the Issue
const SerialPort = require("serialport")
const CCTalk = require('@serialport/parser-cctalk')

const serialport = new SerialPort('/dev/ttyUSB0')

const parser = port.pipe(new CCtalk())

parser.on('data', console.log)

port.open((err) => {
    if (err) {
        return console.log('Error opening port: ', err.message);
    } else {
        console.log('port has ben opened')
        port.write(Buffer.from("2012458", "hex"), function(err){
                console.log('writing error => ', err)
        })
    }

});

port.on("data", (data) => {
        console.log('data:  ', data)
})

port.on("error", function(err) {
  console.log('Error: ', err.message)
})

Versions, Operating System and Hardware

SerialPort@?
"serialport": "^7.1.4"

Node.js v?
v8.10.0

Windows? Linux? Mac?
Linux Lubuntu

Hardware and chipset? (Prolific/FTDI/Other)

This looks like a nodejs issue, what happens if you try the require in the repl?
-- --- Francis Gulotta<EMAIL_ADDRESS>
const repl = require('repl'); works fine

@scorpioRED I think it may just be a capitalisation issue... try changing to new CCTalk() instead of new CCtalk()


Example notebook not working

TypeError                                 Traceback (most recent call last)
Cell In[2], line 4
1 from moatless.loop import SearchLoop
3 instructions = "improve the website app design"
----> 4 search_loop = SearchLoop(workspace, instructions=instructions)
5 search_response = search_loop.execute()
7 for file in search_response.files:
File ~/Repos/moatless-tools/moatless/loop/search.py:165, in SearchLoop.init(self, workspace, instructions, trajectory, do_initial_search, max_context_size, token_decay_rate, combined_function, support_test_files, **kwargs)
153 def init(
154     self,
155     workspace: Workspace,
(...)
163     **kwargs,
164 ):
--> 165     super().init(trajectory=trajectory, **kwargs)
167     # TODO: Move all instance vars to pydantic fields and private attrs
168     self._workspace = workspace
TypeError: Loop.init() got an unexpected keyword argument 'trajectory'

I refactored the project quite a bit the last days. Updated the notebook so you can try again now.


Java build: maven should patch automatically pre-built binaries

Describe the bug
When building a Java project with maven, some dependencies can pack pre-built binaries (I know, this is bad especially for cross-compilation, but I'm not the dev of these libs). Therefore, if the next steps of the compilation call these binaries, an error will occur about Cannot run program "/build/source/blabla.exe": error=2, No such file or directory .
Given how many people (especially in industry) care about Java, having simple tools to deal with these cases would be extremely appreciated.
The usual patching methods (patchelf) fails here as maven is responsible for downloading AND compiling, and it seems to do so in a kind of loop.
Proposed solutions
It would be cool, somehow, to automatically patch the binaries (or provide an option to do so, potentially mentioning that it would break cross-compilation). I'm not an expert of maven, but I can imagine some generic dirty tricks, like hooking into the curl/tar/whatever to automatically patch the binaries every time a new source is downloading, or to rely on buildFhsUserEnv, but I like it less due to the complications it implies.
Another (complementary as it's not automatic) solution could also be to replace the binary with a copy of another binary packaged into Nixpkgs. This way we do preserve cross-compilation. This may be done, again, by hooking into tar/..., checking if some binaries specified by the user (based on their name of instance) are present, and if so we could replace them with the appropriate binary.
Steps To Reproduce
Steps to reproduce the behavior:

Compile this:

# This method is the simplest, but not the cleanest (download the whole maven dependency in one output)
# https://nixos.org/manual/nixpkgs/stable/#maven
{ stdenv, maven, lib, fetchFromGitHub }:
stdenv.mkDerivation rec {
  name = "quarkus-${version}";
  version = "2.10.1.Final";

  src = fetchFromGitHub {
    owner = "quarkusio";
    repo = "quarkus";
    rev = "${version}";
    sha256 = "sha256-OUxVkKFqAEwWQiwvVJfetHC0nEPARvYXpeu8bKSVu7M=";
  };

  buildInputs = [ maven ];

  buildPhase = ''
    export MAVEN_OPTS="-Xmx4g"
    mvn package -Dmaven.repo.local=$out -Dquickly # also tried with -Dmaven.test.skip=true -DskipTests
  '';

  # keep only *.{pom,jar,sha1,nbm} and delete all ephemeral files with lastModified timestamps inside
  installPhase = ''
    find $out -type f \
      -name \*.lastUpdated -or \
      -name resolver-status.properties -or \
      -name _remote.repositories \
      -delete
  '';

  # don't do any fixup
  dontFixup = true;
  outputHashAlgo = "sha256";
  outputHashMode = "recursive";
  # replace this with the correct SHA256
  outputHash = lib.fakeSha256;
}

Notify maintainers

Pinging the people that edited the maven nix file, not sure who is an expert of java otherwise
@charles-dyfis-net @shlevy @volth @asymmetric @zimbatm

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/cant-package-quarkus/20085/3


s config delete 未指定access参数时undefined

Describe the bug
A clear and concise description of what the bug is.
Screenshots
If applicable, add screenshots to help explain your problem.

已于0.1.2版本修复


Fixed logically dead code

CID 1508856: Logically dead code #10432
In access_control.cc:
197    size_t equalsign = kvp.find(_tokenConfig.kvDelimiter);
   	cond_cannot_single: Condition<PHONE_NUMBER>3709551615UL == equalsign, taking false branch. Now the value of equalsign cannot be equal to -1.
198    if (kvp.npos == equalsign) {
199      ERROR_OUT("invalid key-value-pair, missing key-value delimiter");
200      return _state = INVALID_SYNTAX;
201    }
202    StringView key   = kvp.substr(0, equalsign);
   	cannot_single: At condition equalsign !=<PHONE_NUMBER>3709551615UL, the value of equalsign cannot be equal to -1.
   	dead_error_condition: The condition equalsign !=<PHONE_NUMBER>3709551615UL must be true.

CID 1508856 (#1 of 1): Logically dead code (DEADCODE)
dead_error_line: Execution cannot reach this statement: <temporary>.basic_string_vi....
203    StringView value = equalsign != kvp.npos ? kvp.substr(equalsign + 1) : "";

[approve ci]

@soumyajit11 : @JosiahWI pointed out that your osx build should work once you rebase on top of latest master to pull in a fix for including openssl. Can you please rebase and push again?

[approve ci osx]

[approve ci autest]


Fix DMs by sync_and_notify

Bug Report
Description
The vaccinesignup:sync_and_notify task (which calls SyncBot) is flawed, because it attempts to DM subscribed users after any Locations are created or updated, regardless of whether those specific zip codes were followed.
Steps to Reproduce

Run rake vaccinesignup:sync_and_notify.
The sent DMs don't correspond to the updated Locations.

Expected behavior
If a given Location gets updated, then the outgoing DM should contain all the Locations in the same zip code.
Additional context
The app currently DMs appointment-locations under two conditions:

After parsing TWITTER_CLIENT.direct_messages_received for zip codes.
After syncing Locations with LA County.

Since the streaming version of the bot will handle context 1, we just need a new task that DMs all the appointment-locations in the zip code of any updated Location.

@wraasch what do you think of the expected behavior above? I think this is in line with what we discussed, but want to make sure before potentially going down the wrong path.


Memory Consumption is too much for the animation.

I added a a json file from the stock lottie animations on their website. On running the application, the app was consuming a total of 70MB memory. Within a minute, it shooted to 100MB.
To Reproduce
Steps to reproduce the behavior:

Create a new project and Install the package via nuget.
Extract and add the following to your bin/Assets folder.

phone_number_verification.zip

Add this to MainWindow.xaml

<lottieSharp:LottieAnimationView Height="200" Width="200"
            DefaultCacheStrategy="None"
            FileName="Assets/phone_number_verification.json" AutoPlay="True"
            VerticalAlignment="Top"
            HorizontalAlignment="Left"/>

Run the app
Open Resource Monitor and check the memory of your app being increased gradually.

@DevAtomWindows Thanks for report
I leave that running for 30 minutes. it's started with 102 mb and remains same

Don't you think 102 MB is a bit too much?

WPF animations often use a lot of memory. I think it's a downside, and this issue a suggestion for an enhancement.

@DevAtomWindows Yes it is. But Lottie structure need lot of memory. I did the same test with LottieUWP and the result it was same 90MB and it's consume less because UWP applications are using less memory compare with WPF.


allow specifying application to generate artifacts for

Resulting from https://github.com/surajssd/kapp/issues/17#issuecomment-310578854
Now we support defining multiple applications in a single file (#86), and right now Kubernetes artifacts get generated for every application defined in that one file.
However, we should add support for choosing the application to generate artifacts for using the command line.

How do we want to proceed with this?
One way is to do something like -

kedge -f wordpress.yml generate
kedge -f wordpress.yml generate web
kedge -f wordpress.yml generate web db

We should also support some way of excluding an app and even wildcards, so

kedge -f wordpress.yml generate we*
kedge -f wordpress.yml generate !web

@containscafeine I made some edits to your comment to make it a bit more explicit of what we are trying to do. Please review it once.
LGTM from my side. My suggestion is, let's always make sure that the UX is "simple". I like the wildcards idea but I am not sure how it would affect the UX and the implementation. How about we do the first part cleanly and get feedback first? WDYT?
Also, a major requirement in terms of UX: Error out when the user provides an incorrect service name is provided by the user. For example,  foobar service is not defined in wordpress.yml
kedge -f wordpress.yml generate foobar
FATAL: foobar - Incorrect or missing service name in wordpress.yml

Okay, let's do this in 2 parts!

kedge -f wordpress.yml generate web
This means that web is sub-command to generate, not sure if that is even possible to do with cobra.
I would like to see a flag which lists all the services user wanna generate. This flag will be under generate and not global.
so something like this
kedge -f wordpress.yml generate -s web -s db

I don't think we should do that.
The case should be that if you don't want to everything at once put it in the separate files.
Using file per service is the best practice and we should push to that direction.

The case should be that if you don't want to everything at once put it in separate files.
Using file per service is the best practice and we should push to that direction.

@kadel I agree with you about the best practice part and that is what we should tell people - use single file per service. But the use case still is important to give "single file" users a better experience.

If a developer reached the point where he/she needs to deploy only one service from a file where multiple apps are defined then it's the point where this file should be splited into multiple once.

@kadel I agree on that part this could be a good practice to enforce

What if we put this on the lowest priority.
We can implement this only once it's clear this is really needed by some real use case.


Question regarding classifiers

I want to use this program to recognize my own ECG data. Is this possible? Or to put it another way, are the parameters of the classifiers already trained? Thank you very much for your reply

Yes, we ship three pre-trained classifiers that you can use to classify your own ECG time series. Examples are not yet available on our stable docs, but you can check them out here: https://sleepecg.readthedocs.io/en/latest/examples/ (in particular, see the section "Sleep staging custom data").

Thank you very much for your reply. The function has been implemented, and I sincerely wish sleepecg better and better.


Remove already produced ebook, add Dunsany novel

Removed Verne, Journey to Center of the Earth because it has been produced and released. Added Dunsany's The King of Elfland's Daughter, just added to PG in January 2020, first published in 1924. It is under 70,000 words.

Thanks!


Raid cursor does not work correctly

The function does not work correctly,

the cursor turns on only after pressing the hotkey + dpad up or down
The cursor does not turn off after pressing the hotkey and dpad remains blocked by it
No actions are performed on the cursor target

I really look forward to the fix, thank you for the work you have done, I have been waiting for this port on 335 for a long time

Yeah I believe I've never tested this feature... i'll take a look on it by next week because of school.

Fixed in the 1.1.0 release, sorry for the long delay.


enable Travis-CI building/testing on osx

Coverage remained the same at 44.25% when pulling 9f470bad8f7e1293df9d91a47d3e20ccffb1c075 on osx-builds into 0966eeb2a5deb3ae4e0e86baa2feffd78a8b40cc on master.

Coverage decreased (-2.51%) to 41.74% when pulling f26f4aaf1f7b3985cb0744ada66ea1a450de5289 on osx-builds into 0966eeb2a5deb3ae4e0e86baa2feffd78a8b40cc on master.

Coverage decreased (-3.14%) to 41.74% when pulling 56cc9cf23dede6c5bd30c6a44058c35c48fd8fed on osx-builds into 8d54464fac525050d9e53c8f7f3cd1ccc47c3fa3 on master.

Coverage decreased (-3.14%) to 41.74% when pulling 34ce7f47f1fdff7f6e43059facc9d70fc15e0e0c on osx-builds into c64fd0243a324135bbb61ecfd0be8e0c29e2cdd5 on master.

posting the email conversation with Travis Support for reference.

I think I can live without testing on multiple JDK's, I haven't seen any JDK specific  quircks pop up in my tests for a while so please enable the osx support on this repo.
Thanx, Mark

Hi, Mark,
I took a look at this repository. Currently, testing with multiple JDK versions is not > > officially supported for the multi-OS feature. (See https://github.com/travis-ci/travis-ci/issues/2320 for more details.)
We can enable the feature for the repository all the same, but you might have to manage the language runtimes yourself, because it is not currently pre-installed. (See the individual language ticket referenced from the GitHub issue above.) In this case, you can try switching the "language" to "c" (or another supported language such as "ruby"), then prepare language runtimes yourself (that is, install Python runtime, or runtime manager such as nvm).
If you are still interested in the multi-os feature, do let us know.
Thank you.
--
Hiro

On Wed, Jan 21, 2015 at 18:39:04 UTC, Mark  wrote:

Hi all,
I was wondering if you could enable OSX builds for my project
GeoDienstenCentrum/sass-maven-plugin.
I have a PR prepared in my repository at
https://github.com/GeoDienstenCentrum/sass-maven-plugin/pull/16 which
may need some tweaking, any comments appreciated.
Thanx, Mark

Coverage remained the same at 82.55% when pulling 544b18299684a4f305a3f40e7a29b9bb013139e3 on osx-builds into 4412ae9316c40bc4c30f7cc79d86c5ec675ffa63 on master.

Coverage remained the same at 82.55% when pulling ff8ee5c1368c00d49e316470e5997f61149e8d53 on osx-builds into 3ca8e16c48290b903c8b5557cdc93d3b44d788c4 on master.

Coverage increased (+0.17%) to 82.55% when pulling 39283df312ac84b40fd9106b1ff803e2291ae9a5 on osx-builds into 7722aa1d95b3509373cd9ed4b66ebfd9263cbade on master.


Error in HRMS installation

Hello, the terminal closes itself while installing the HRMS system. Do you have an update on this?

I found that HRMS installation tends to fail sometimes and it's got nothing to do with the installer.

Please exclude HRMS from this package. Drops the quality of this package to magma level...

Destroyed 2 VM's in the last week trying to figure out what was the issue.

Thanks for your feedback and suggestion. Just so you know, if the install crashes during HRMS install it does not require you to kill the vps as at that point the only process left is ssl setup which can be done manually.
However, I really don't understand why HRMS install is buggy because it is the same experience even outside the script. However, i would prefer to leave the decision to install HRMS to the user while informing of the risk. I will move HRMS install to the very end of the install process and add a warning to users to know that HRMS install might throw an error. Moving it to the end however ensures that the base setup is complete so the HRMS install crash will not force you to terminate your VM.

I have the same issue here. I have ubuntu 22.04 + erpnext 15

@imlei Please confirm if you're running the script as root.

@imlei Please confirm if you're running the script as root.

yes, I am running as root

@imlei You cannot run frappe installation as root. Please create a standard user and add to the sudoers and ssh with that user to run install.

@imlei You cannot run frappe installation as root. Please create a standard user and add to the sudoers and ssh with that user to run install.

Tired as frappe, get the error:
Installing hrms...
Setting up Frappe HR...
Installation for Frappe HR app failed due to an error. Please try re-installing                                                                                the app or report the issue on https://github.com/frappe/hrms/issues/new if not                                                                                resolved.
An error occurred while installing hrms: Module import failed for Expense Claim                                                                                Type, the DocType you're trying to open might be deleted.
 Error: No module n                                                                                amed 'frappe.core.doctype.expense_claim_type'
Traceback with variables (most recent call last):
  File "apps/frappe/frappe/commands/site.py", line 445, in install_app
    _install_app(app, verbose=context.verbose, force=force)
      context = {'sites': ['apexsolu.com'], 'force': False, 'verbose': False, 'p                                                                                rofile': False}
      apps = ('hrms',)
      force = False
      _install_app = <function install_app at 0x7f255be520e0>
      filelock = <function filelock at 0x7f255be51d80>
      exit_code = 0
      site = 'apexsolu.com'
      app = 'hrms'
      err = ImportError("Module import failed for Expense Claim Type, the DocTyp                                                                                e you're trying to open might be deleted.
 Error: No module named 'frappe.cor                                                                                e.doctype.expense_claim_type'")
  File "apps/frappe/frappe/installer.py", line 311, in install_app
    frappe.get_attr(after_install)()
      name = 'hrms'
      verbose = False
      set_as_patched = True
      force = False
      sync_jobs = <function sync_jobs at 0x7f255ad9c790>
      sync_for = <function sync_for at 0x7f255ad9d240>
      sync_customizations = <function sync_customizations at 0x7f255bdfcaf0>
      sync_fixtures = <function sync_fixtures at 0x7f255ad9d480>
      app_hooks = {'accounting_dimension_doctypes': ['Expense Claim', 'Expense C                                                                                laim Detail', 'Expense Taxes and Charges', 'Payroll Entry'], 'advance_payment_do                                                                                ctypes': ['Gratuity', 'Employee Advance'], 'after_app_install': ['hrms.setup.aft                                                                                er_app_install'], 'after_install': ['hrms.install.after_install'], 'after_migrat                                                                                e': ['hrms.setup.update_select_perm_after_install'], 'app_description': ['Modern                                                                                HR and Payroll Software'], 'app_email'<EMAIL_ADDRESS>'app_include_css                                                                                ': ['hrms.bundle.css'], 'app_include_js': ['hrms.bundle.js'], 'app_license': ['G                                                                                NU General Public License (v3)'], 'app_name': ['hrms'], 'app_publisher': ['Frapp                                                                                e Technologies Pvt. Ltd.'], 'app_title': ['Frappe HR'], 'bank_reconciliation_doc                                                                                types': ['Expense Claim'], 'before_app_uninstall': ['hrms.setup.before_app_unins                                                                                tall'], 'before_tests': ['hrms.tests.test_utils.before_tests'], 'before_uninstal                                                                                l': ['hrms.uninstall.before_uninstall'], 'calendars': ['Leave Application'], 'do                                                                                c_events': {'User': {'validate': ['erpnext.setup.doctype.e...
      installed_apps = ['frappe', 'erpnext']
      app = 'frappe/erpnext'
      required_app = 'erpnext'
      after_install = 'hrms.install.after_install'
  File "apps/hrms/hrms/install.py", line 21, in after_install
    raise e
      BUG_REPORT_URL = 'https://github.com/frappe/hrms/issues/new'
  File "apps/hrms/hrms/install.py", line 9, in after_install
    setup()
      BUG_REPORT_URL = 'https://github.com/frappe/hrms/issues/new'
  File "apps/hrms/hrms/setup.py", line 18, in after_install
    make_fixtures()
  File "apps/hrms/hrms/setup.py", line 414, in make_fixtures
    make_records(records)
      records = [{'doctype': 'Expense Claim Type', 'name': 'Calls', 'expense_typ                                                                                e': 'Calls'}, {'doctype': 'Expense Claim Type', 'name': 'Food', 'expense_type':                                                                                'Food'}, {'doctype': 'Expense Claim Type', 'name': 'Medical', 'expense_type': 'M                                                                                edical'}, {'doctype': 'Expense Claim Type', 'name': 'Others', 'expense_type': 'O                                                                                thers'}, {'doctype': 'Expense Claim Type', 'name': 'Travel', 'expense_type': 'Tr                                                                                avel'}, {'doctype': 'Vehicle Service Item', 'service_item': 'Brake Oil'}, {'doct                                                                                ype': 'Vehicle Service Item', 'service_item': 'Brake Pad'}, {'doctype': 'Vehicle                                                                                Service Item', 'service_item': 'Clutch Plate'}, {'doctype': 'Vehicle Service It                                                                                em', 'service_item': 'Engine Oil'}, {'doctype': 'Vehicle Service Item', 'service                                                                                _item': 'Oil Change'}, {'doctype': 'Vehicle Service Item', 'service_item': 'Whee                                                                                ls'}, {'doctype': 'Leave Type', 'leave_type_name': 'Casual Leave', 'name': 'Casu                                                                                al Leave', 'allow_encashment': 1, 'is_carry_forward': 1, 'max_continuous_days_al                                                                                lowed': '3', 'include_holiday': 1}, {'doctype': 'Leave T...
  File "apps/frappe/frappe/desk/page/setup_wizard/setup_wizard.py", line 412, in                                                                                make_records
    doc = frappe.new_doc(doctype)
      records = [{'doctype': 'Expense Claim Type', 'name': 'Calls', 'expense_typ                                                                                e': 'Calls'}, {'doctype': 'Expense Claim Type', 'name': 'Food', 'expense_type':                                                                                'Food'}, {'doctype': 'Expense Claim Type', 'name': 'Medical', 'expense_type': 'M                                                                                edical'}, {'doctype': 'Expense Claim Type', 'name': 'Others', 'expense_type': 'O                                                                                thers'}, {'doctype': 'Expense Claim Type', 'name': 'Travel', 'expense_type': 'Tr                                                                                avel'}, {'doctype': 'Vehicle Service Item', 'service_item': 'Brake Oil'}, {'doct                                                                                ype': 'Vehicle Service Item', 'service_item': 'Brake Pad'}, {'doctype': 'Vehicle                                                                                Service Item', 'service_item': 'Clutch Plate'}, {'doctype': 'Vehicle Service It                                                                                em', 'service_item': 'Engine Oil'}, {'doctype': 'Vehicle Service Item', 'service                                                                                _item': 'Oil Change'}, {'doctype': 'Vehicle Service Item', 'service_item': 'Whee                                                                                ls'}, {'doctype': 'Leave Type', 'leave_type_name': 'Casual Leave', 'name': 'Casu                                                                                al Leave', 'allow_encashment': 1, 'is_carry_forward': 1, 'max_continuous_days_al                                                                                lowed': '3', 'include_holiday': 1}, {'doctype': 'Leave T...
      debug = False
      _dict = <class 'frappe._dict'>
      scrub = <function scrub at 0x7f255bfeac20>
      record = {'doctype': 'Expense Claim Type', 'name': 'Calls', 'expense_type'                                                                                : 'Calls'}
      doctype = 'Expense Claim Type'
      condition = None
  File "apps/frappe/frappe/__init__.py", line 1190, in new_doc
    new_doc = get_new_doc(doctype, parent_doc, parentfield, as_dict=as_dict)
      doctype = 'Expense Claim Type'
      parent_doc = None
      parentfield = None
      as_dict = False
      kwargs = {}
      get_new_doc = <function get_new_doc at 0x7f25596196c0>
  File "apps/frappe/frappe/model/create_new.py", line 22, in get_new_doc
    frappe.local.new_doc_templates[doctype] = make_new_doc(doctype)
      doctype = 'Expense Claim Type'
      parent_doc = None
      parentfield = None
      as_dict = False
  File "apps/frappe/frappe/model/create_new.py", line 35, in make_new_doc
    doc = frappe.get_doc({"doctype": doctype, "__islocal": 1, "owner": frappe.se                                                                                ssion.user, "docstatus": 0})
      doctype = 'Expense Claim Type'
  File "apps/frappe/frappe/__init__.py", line 1333, in get_doc
    doc = frappe.model.document.get_doc(*args, **kwargs)
      args = ({'doctype': 'Expense Claim Type', '__islocal': 1, 'owner': 'Admini                                                                                strator', 'docstatus': 0},)
      kwargs = {}
      frappe = <module 'frappe' from 'apps/frappe/frappe/__init__.py'>
  File "apps/frappe/frappe/model/document.py", line 83, in get_doc
    controller = get_controller(doctype)
      args = ({'doctype': 'Expense Claim Type', '__islocal': 1, 'owner': 'Admini                                                                                strator', 'docstatus': 0},)
      kwargs = {'doctype': 'Expense Claim Type', '__islocal': 1, 'owner': 'Admin                                                                                istrator', 'docstatus': 0}
      doctype = 'Expense Claim Type'
  File "apps/frappe/frappe/model/base_document.py", line 70, in get_controller
    site_controllers[doctype] = import_controller(doctype)
      doctype = 'Expense Claim Type'
      site_controllers = {'Module Def': <class 'frappe.core.doctype.module_def.m                                                                                odule_def.ModuleDef'>, 'DocField': <class 'frappe.core.doctype.docfield.docfield                                                                                .DocField'>, 'DocPerm': <class 'frappe.core.doctype.docperm.docperm.DocPerm'>, '                                                                                DocType Link': <class 'frappe.core.doctype.doctype_link.doctype_link.DocTypeLink                                                                                '>, 'System Settings': <class 'frappe.core.doctype.system_settings.system_settin                                                                                gs.SystemSettings'>, 'Notification Settings': <class 'frappe.desk.doctype.notifi                                                                                cation_settings.notification_settings.NotificationSettings'>, 'DefaultValue': <c                                                                                lass 'frappe.core.doctype.defaultvalue.defaultvalue.DefaultValue'>, 'Payment Rec                                                                                onciliation': <class 'erpnext.accounts.doctype.payment_reconciliation.payment_re                                                                                conciliation.PaymentReconciliation'>, 'Customize Form': <class 'frappe.custom.do                                                                                ctype.customize_form.customize_form.CustomizeForm'>, 'DocType Action': <class 'f                                                                                rappe.core.doctype.doctype_action.doctype_action.DocTypeAction'>, 'DocType State                                                                                ': <class 'frappe.core.doctype.doctype_state.doctype_state.DocTyp...
  File "apps/frappe/frappe/model/base_document.py", line 95, in import_controlle                                                                                r
    module = load_doctype_module(doctype, module_name)
      doctype = 'Expense Claim Type'
      Document = <class 'frappe.model.document.Document'>
      NestedSet = <class 'frappe.utils.nestedset.NestedSet'>
      module_name = 'Core'
      doctype_info = None
      module_path = None
      class_overrides = {'Address': ['erpnext.accounts.custom.address.ERPNextAdd                                                                                ress'], 'Employee': ['hrms.overrides.employee_master.EmployeeMaster'], 'Timeshee                                                                                t': ['hrms.overrides.employee_timesheet.EmployeeTimesheet'], 'Payment Entry': ['                                                                                hrms.overrides.employee_payment_entry.EmployeePaymentEntry'], 'Project': ['hrms.                                                                                overrides.employee_project.EmployeeProject']}
  File "apps/frappe/frappe/modules/utils.py", line 254, in load_doctype_module
    raise ImportError(msg) from e
      doctype = 'Expense Claim Type'
      module = 'Core'
      prefix = ''
      suffix = ''
      app = 'frappe'
      key = ********
      module_name = 'frappe.core.doctype.expense_claim_type.expense_claim_type'
      msg = "Module import failed for Expense Claim Type, the DocType you're try                                                                                ing to open might be deleted.
 Error: No module named 'frappe.core.doctype.ex                                                                                pense_claim_type'"
builtins.ImportError: Module import failed for Expense Claim Type, the DocType y                                                                                ou're trying to open might be deleted.
 Error: No module named 'frappe.core.d                                                                                octype.expense_claim_type'
An error occurred on line 458 with exit status 0


Do not link group for iOS builds.

Problem
When linking groups in IOS the linker fails, because it is not supported on iOS or MacOS.
Change overview
If iOS as well, do not link group.
Testing
Compiled successfully.

@krypton36 Restyle?


Dask task's displaying node names

Is your feature request related to a problem? Please describe.
Is it possible to have the Dask status/dashboards report the names of the functions rather than a generic node_fn label? I'm not sure if this is a Dask concern or something that can be manipulated within Hamilton?
Below, a pipeline is executing on a Dask worker, however I can't easily/obviously understand what part of the DAG is being executed.

Describe the solution you'd like
The name of the function defined in the DAG (which I think is in some part related to the node name?) appears in the Dask dashboards rather than node_fn
Additional context
I am trying to use Hamilton to define a big bunch of related workflows, farm them out to a Dask scheduler and use Dask's dashboards as a proxy task monitor.

OK, I think this should be easy. Just to check, you're using the Dask graph adapter?
I'm thinking all we add is the name=node.name here. Pretty sure its the name and not hte dask_key_name although not 100% sure. Will have to mess with it a bit.

OK, we'll need to sit down and run some tests, but mind giving it a try with this: https://github.com/DAGWorks-Inc/hamilton/pull/163? Should be as easy as:
pip install git+https://github.com/dagworks-inc/hamilton.git@dask-improvement

@janhurst yeah let us know if this version solves your issue -- we'll then merge and deploy it :)

OK, I think this should be easy. Just to check, you're using the Dask graph adapter?

Yes, the Dask graph adapter

OK, we'll need to sit down and run some tests, but mind giving it a try with this: #163? Should be as easy as:
pip install git+https://github.com/dagworks-inc/hamilton.git@dask-improvement

No luck... I'm moderately sure that my local venv and the dask scheduler/workers are running off the tag :)

@janhurst  :/ mind putting in details of your setup so I can try to recreate it?

I am using docker compose to bring up a scheduler and workers. The Dockerfile I am using is roughly:
FROM ghcr.io/dask/dask:latest-py3.9

RUN pip install \
    git+https://github.com/dagworks-inc/hamilton.git@dask-improvement \
    "pandas>=1.3.5,<1.4" \
    "numpy>=1.23,<1.24"

ENV PYTHONPATH=/opt/app/src
COPY src /opt/app/src

My local .venv is using the same pandas and numpy pins along with dask[complete]>=2023.4. There is quite a few other packages in my local .venv, usual suspects of dev tools (eg pytest etc), and a bunch of jupyter packages etc.
Sorry about the pandas and numpy pins, its a frustrating constraint coming from Dataiku.
The hamilton pipeline is a fan out to sub dags and then collect back, similar to our discussion elsewhere. The nodes in the sub DAG essentially call out to a slow/expensive database and serialize to parquet.

OK, I've managed to reproduce it. This is hacky but I hope should get you unblocked -- there be some dragons around dask. If you try repulling the latest version from that it should work (not exactly sure how to do that with pip but I think if you uninstall it'll work.
Currently I appended a UUID cause dask was giving me trouble with the raw node name...

For future reference, the easiest way to test this on Hamilton is:

Run a dask pipeline locally (examples/dask/hello_world, for example)
Add a very long sleep statement in a function
Run it

Then go to http://localhost:8787/status and you can see the dashboard.

thanks! seeing node names now!
I'll have to experiment with my DAG/sub-DAG structure... i have setup the DAG so that i have many sub DAGs, when in fact there are 6 groups of sub dags.... being able to see those groups in a Dask dashboard would be great too, but I think the fanout/collect stuff we have been talking about needs to settle a bit before i worry about it!

Excellent! Those node names make about as much sense to me as not having them but I think they make more sense to you 😆
And I think we can do that if dash allows, we have all the metadata.

@janhurst can we close this issue? or?

@skrawcz we should merge first, no?

I think we've addressed the original intent raised here.. I can see much more meaningful node info in dask now!
there might be some more we could do but perhaps better served in a new issue/feature request?


Doom Emacs fails to install

I'm honestly not sure what the problem is here but I'll provide as much information as possible such that the issue hopefully is self-describing.
flake.nix:
{
  inputs = {
    nixpkgs.url =
      "github:NixOS/nixpkgs/nixos-22.05";

    home-manager.url =
      "github:nix-community/home-manager/release-22.05";
    home-manager.inputs.nixpkgs.follows = "nixpkgs";

    emacs-overlay.url =
      "github:nix-community/emacs-overlay";
    emacs-overlay.flake = false;

    nix-doom-emacs.url =
      "github:nix-community/nix-doom-emacs";
    nix-doom-emacs.inputs.nixpkgs.follows = "nixpkgs";
    nix-doom-emacs.inputs.emacs-overlay.follows = "emacs-overlay";
  };

  outputs = inputs: let
    mkNixosConfigurations = builtins.mapAttrs (host: system:
      import ./${host} {
        inherit (inputs) nixpkgs home-manager;
        inherit inputs system;
      }
    );
  in {
    nixosConfigurations = mkNixosConfigurations {
      x = "x86_64-linux";
    };
  };
}

x/default.nix:
{ nixpkgs, home-manager, inputs, system }:

nixpkgs.lib.nixosSystem {
  inherit system;

  modules = [
    home-manager.nixosModules.home-manager {
      home-manager = {
        useGlobalPkgs = true;
        useUserPackages = true;
        extraSpecialArgs = { inherit (inputs) nix-doom-emacs; };
        users.x = import ../home/x;
      };
    }
  ];
}

../home/x/default.x:
{ pkgs, ... }:

{
  imports = [
    ./doom-emacs
  ];
}

doom-emacs/default.nix:
{ pkgs, nix-doom-emacs, ... }:

{
  imports = [ nix-doom-emacs.hmModule ];

  programs.doom-emacs = {
    enable = true;
    doomPrivateDir = ./doom.d;

    emacsPackagesOverlay = self: super: with pkgs.emacsPackages; {
      gitignore-mode = git-modes;
      gitconfig-mode = git-modes;
    };
  };
}

Logs:
$ sudo nixos-rebuild switch
building the system configuration...
error: builder for '/nix/store/4gwymw411ig955rl4jqc8fcgpz8xkhaa-straight-emacs-env.drv' failed with exit code 255;
       last 10 log lines:
       >       (apply #[257 "\306\307!\210\310\311\"A@\312!\313\314\315\313...
       >       (let (autoload-compute-prefixes) (apply fn args))
       >       (doom-cli--straight-no-compute-prefixes-a #[257 "\306\307!\210\310\3...
       >       (apply doom-cli--straight-no-compute-prefixes-a #[257 "\306\307!\210\3...
       >       (straight--build-autoloads (:local-repo "bind-key" :repo "bind-key" :t...
       >       (run-hook-with-args straight--build-autoloads (:local-repo "bind-key" ...
       >       (straight--build-package (:local-repo "bind-key" :repo "bind-key" :typ...
       > \310\304!\300\211\311>?\205\312!...
       >       (straight--transaction-exec use-package-\"0f26964d170469320dba0467483f...
       >     ! Wrote extended backtrace to /nix/store/z42pmjqplzhvsxdgrf9vsk9ffmzpxsrz-straight-emacs-env/logs/cli.doom.221013050934.176.error
       For full logs, run 'nix log /nix/store/4gwymw411ig955rl4jqc8fcgpz8xkhaa-straight-emacs-env.drv'.
error: 1 dependencies of derivation '/nix/store/28gy483r7278s4wa8xn0n42vmbs09cij-emacs-with-packages-28.1.drv' failed to build
error: 1 dependencies of derivation '/nix/store/jfsa6524171jjlb5jw5hsvfnmh5xy4nk-emacs-with-packages-with-packages-28.1.drv' failed to build
error: 1 dependencies of derivation '/nix/store/s5fnkkk5ny7h25c6i8304c16l6x0ws5c-home-manager-path.drv' failed to build
error: 1 dependencies of derivation '/nix/store/ncjiiwm12zszzs68h5bmv0wlc5kib0kd-home-manager-generation.drv' failed to build
error: 1 dependencies of derivation '/nix/store/c54m6m6wdv73fxrdyvyr5zrvzwid95rd-user-environment.drv' failed to build
error: 1 dependencies of derivation '/nix/store/j0hbbqpvd4yjmhrl99sxy28m62pwyylb-etc.drv' failed to build
error: 1 dependencies of derivation '/nix/store/rngxnwpi03ns876f2sp0jnhbpzvq00kp-nixos-system-x-22.05.20221012.9234f5a.drv' failed to build

$ nix log /nix/store/4gwymw411ig955rl4jqc8fcgpz8xkhaa-straight-emacs-env.drv
@nix { "action": "setPhase", "phase": "installPhase" }
installing
Loading /nix/store/fmwi35zh6jhcd80rq2dxnmd04k6cck85-doom-src/bin/doom...
Installing Doom Emacs!

- Skipping /nix/store/2d2c9f6xg64yqr0qrbf60yrm2gxarslq-doom.d/ (already exists)
  - Skipping init.el (already exists)
  - Skipping config.el (already exists)
  - Skipping packages.el (already exists)
Installing plugins
> Installing packages...
  - Checked out use-package: e2d173b1200865a9efd5c2066831a230497582c0
  > Building use-package...
  > Building use-package > Building bind-key...
  x There was an unexpected runtime error
    Message: Defining as dynamic an already lexical var
    Backtrace:
      (defvar autoload-compute-prefixes t ("/nix/store/3jdx3wfwnm78cv6vgj5fp...
      (require autoload)
      (#[257 "\306\307!\210\310^A\311\"A@\312^A!\313\314\315\313^X^Y^Z\3...
      (apply #[257 "\306\307!\210\310^A\311\"A@\312^A!\313\314\315\313^X^Y^Z...
      (let (autoload-compute-prefixes) (apply fn args))
      (doom-cli--straight-no-compute-prefixes-a #[257 "\306\307!\210\310^A\3...
      (apply doom-cli--straight-no-compute-prefixes-a #[257 "\306\307!\210\3...
      (straight--build-autoloads (:local-repo "bind-key" :repo "bind-key" :t...
      (run-hook-with-args straight--build-autoloads (:local-repo "bind-key" ...
      (straight--build-package (:local-repo "bind-key" :repo "bind-key" :typ...
      (#[0 "\307\305^N4\"\306?\206^M^@\310\304!\300\211\311>?\205^X^@\312^A!...
      (straight--transaction-exec use-package-\"0f26964d170469320dba0467483f...
    ! Wrote extended backtrace to /nix/store/z42pmjqplzhvsxdgrf9vsk9ffmzpxsrz-straight-emacs-env/logs/cli.doom.221013050934.176.error

/nix/store/z42pmjqplzhvsxdgrf9vsk9ffmzpxsrz-straight-emacs-env/logs/cli.doom.221013050934.176.error attached as cli.doom.221013050934.176.error.log.gz

Locally, I've gotten emacs working again by pinning doomemacs to an old commit:
{
    doom-emacs.url = "github:doomemacs/doomemacs/3853dff5e11655e858d0bfae64b70cb12ef685ac";
    doom-emacs.flake = false;
    nix-doom-emacs.inputs.doom-emacs.follows = "doom-emacs";
}

The first commit after this breaks compilation with missing "defcli!". The most recent commit (at time of writing, 9f22a0a2a5191cf57184846281164f478df4b7ac) yields the above defvar error. I'm not sure if there are commits in the middle that would work, but if I have time this weekend I may try a more recent working commit.

Locally, I've gotten emacs working again by pinning doomemacs to an old commit:
{
    doom-emacs.url = "github:doomemacs/doomemacs/3853dff5e11655e858d0bfae64b70cb12ef685ac";
    doom-emacs.flake = false;
    nix-doom-emacs.inputs.doom-emacs.follows = "doom-emacs";
}

The first commit after this breaks compilation with missing "defcli!". The most recent commit (at time of writing, 9f22a0a2a5191cf57184846281164f478df4b7ac) yields the above defvar error. I'm not sure if there are commits in the middle that would work, but if I have time this weekend I may try a more recent working commit.

You're really not supposed to set override doom-emacs because of #268. However, the commit that is pinned in this repository is supposed to work.
I still need to test to see if the issue is emacs-overlay update or something. But in general overriding inputs in nix-doom-emacs is a bad idea.

Locally, I've gotten emacs working again by pinning doomemacs to an old commit:
{
    doom-emacs.url = "github:doomemacs/doomemacs/3853dff5e11655e858d0bfae64b70cb12ef685ac";
    doom-emacs.flake = false;
    nix-doom-emacs.inputs.doom-emacs.follows = "doom-emacs";
}

The first commit after this breaks compilation with missing "defcli!". The most recent commit (at time of writing, 9f22a0a2a5191cf57184846281164f478df4b7ac) yields the above defvar error. I'm not sure if there are commits in the middle that would work, but if I have time this weekend I may try a more recent working commit.

Anyway, since 3853dff5e11655e858d0bfae64b70cb12ef685ac is newer than the current commit that we are pining, I am explicitly pining it in PR #308 until we have more time to investigate the issues.

With #319 merged this issue should be fixed. Please comment here otherwise and I will reopen the issue.

This stopped happening here after I removed all the inputs' overrides.

Yeah, please remove any input override so we can use the tested pins instead.


Tensorflow Support Problem

In my support tags there "py27     winamd64" but I have installed python 3.5.2 in Windows 10, now please tell me what should I do to upgrade my support tags to py35 or py36.

How did you install Tensorflow on Windows 10? Did you install via pip?

This question is better asked on  StackOverflow since it is not a  bug or feature request. There is also a larger community that reads questions there. Thanks!

@jubjamie Actually till now I have not installed and want to know how to install.

Please start a stack overflow question, link it here and I can help you there.


[RFE] consumable library for integration with other provisioning agents

Current situation
The provisioning agent implements all features in a single application.
Impact
Re-using the agent's functionality from other agents like e.g. Afterburn is challenging.
This impacts adoption of the agent by the larger Linux ecosystem and hinders its mission of being a reference implementation for a minimal Azure provisioning guest agent.
Ideal future situation

[x] The provisioning agent provides a library (rust crate) which is consumable by other projects. (https://github.com/Azure/azure-init/pull/39)
[x] The library is built and tested in CI, versioned releases are published regularly.

Follow-up tasks

[ ] The library is integrated with Afterburn (possibly in a WIP fork).
[ ] Afterburn using the library is integrated with Flatcar to move away from wa-agent supplied guest configuration.
[ ] Extended Afterburn support of Azure using the library is contributed upstream.

Published v0.1.1 of libazureinit and azure-init.
The 2nd one, The library is built and tested in CI, versioned releases are published regularly is done.


PactRule should use free port

Currently, one has to specify the port both when defining the PactRule and when building the URL used by the client. Without PactRule the ConsumerPactTest both takes care to find a free port, and provides the URL using this port.

Host and port are now optional

Perfect!

I get connection refused when using the new PactProviderRule (and changing the @Pact methods to use PactDslWithProvider). Do I need to do more magic than connecting to localhost:port, where port is what rule.getConfig().port() gives me?

No, it should default to localhost and a random port. You can use rule.getConfig().url() to get the full URL.
Have a look at https://github.com/DiUS/pact-jvm/blob/master/pact-jvm-consumer-junit%2Fsrc%2Ftest%2Fjava%2Fau%2Fcom%2Fdius%2Fpact%2Fconsumer%2FPactRuleWithRandomPortTest.java for an example test.


cartalyst/sentry ~3.0 > no matching package found.

when run composer update, getting this error
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Installation request for graham-campbell/credentials dev-master -> satisfiable by graham-campbell/credentials[dev-master].
- graham-campbell/credentials dev-master requires cartalyst/sentry ~3.0 -> no matching package found.
Potential causes:

A typo in the package name
The package is not available in a stable-enough version according to your minimum-stability setting
see https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion for more details.

Read http://getcomposer.org/doc/articles/troubleshooting.md for further common problems.

Duplicate. You need to add our sentry for you your "repositories" section of your composer.json for now.


CDE-13 Home step

Issue #CDE-13
Problem: Home step
Solution:
Made UI part of home step in modal window

@Aiga115

There should be a scroll, because on a smaller screen the modal content is not visible completely

@vidhya-metacell thanks :-)


Wrong order again

Still doesn't work:
https://github.com/rstormsf/ico_per_week/blob/002_whitelisted/contracts/BlockchainLabsCrowdsale.sol
try to look at:
https://github.com/BlockCatIO/solidity-flattener

@rstormsf , thnx for contract example. Bug was found. We fixed it.
Let us, please, know, if the issue is solved for you.

@vbaranov looks good to me. I can consider the issue resolved


Question: How do you verify the payload coming from EventsAPI?

Congratulations for the API it's very feature complete. I got one doubt on origin verification. You know you can verify requests on slack according to their practices: https://api.slack.com/docs/verifying-requests-from-slack
Maybe I just missed some part of the code but does the code for EventsAPI get the request headers and do that validation? Before calling the handlers?
Thanks!

The following utility is for AWS lambda but you can do similar in your applications. https://github.com/seratch/jslack/blob/1.6.0-RC2/jslack-app-backend/src/main/java/com/github/seratch/jslack/app_backend/vendor/aws/lambda/util/SlackSignatureVerifier.java

@UncleFirefox Do you have any further questions or comments? If not, let me close this issue within a few days.

How would you do it within this example?
public class SampleServlet extends SlackEventsApiServlet {

  @Override
  protected void setupDispatcher(EventsDispatcher dispatcher) {
    dispatcher.register(appUninstalledEventHandler);
  }
}

It would be great if SlackEventsApiServlet passing in the proper config would do that for you before dispatching the events

Sorry, I don't understand your point here.
Generally speaking, you should verify the signature header before calling the EventsDispatcher.

Sorry for the missunderstanding:
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
        String contentType = req.getHeader("Content-Type");
        if (contentType != null && contentType.toLowerCase(Locale.ENGLISH).trim().startsWith("application/json")) {
            String requestBody = req.getReader().lines().collect(Collectors.joining(System.lineSeparator()));
            JsonObject payload = GsonFactory.createSnakeCase().fromJson(requestBody, JsonElement.class).getAsJsonObject();
            String eventType = payload.get("type").getAsString();
            if (eventType != null && eventType.equals("url_verification")) {
                String challenge = payload.get("challenge").getAsString();
                // url_verification: https://api.slack.com/events/url_verification
                resp.setStatus(200);
                resp.setHeader("Content-Type", "text/plain");
                resp.getOutputStream().write(challenge.getBytes(Charset.forName("UTF-8")));
            } else {
                dispatcher.enqueue(requestBody);
                resp.setStatus(200);
            }
        } else {
            log.warn("Unexpected request detected - Content-Type: {}", req.getHeader("Content-Type"));
        }

    }

In the doPost method on SlackEventsApiServlet I think that we could verify that the token is signed correctly, potentially passing some configuration, this should be done before handling the url_verification case. Is it more clear now? How would you do it otherwise?

I'm not sure what you meant by the config here but if you mean a kind of Spring component to inject,  I don't have any plans to implement some components specific to Servlet API or Web frameworks like Spring in the short term. If you would like to have some reusable component for the purpose, you need to implement your own one.

If you go with Servlet, implementing a servlet filter to verify requests may be useful.

May I close this issue if you don't have any further comments?

The issue is when the slack signature is verified before calling the dopost method of the super class the body of the req object is read and is nulled out. Due to this the below line "String requestBody = req.getReader().lines().collect(Collectors.joining(System.lineSeparator()));" throws an exception.
If you could overload this method to also accept header and request body separately then it will work for the signed secret validation at the client end.
I would like to contribute for this change and you can review the pull request. Please let me know.

@shubhvashisht

The issue

OK, you're talking about this implementation, right?
https://github.com/seratch/jslack/blob/1.7.8/jslack-app-backend/src/main/java/com/github/seratch/jslack/app_backend/events/servlet/SlackEventsApiServlet.java#L40

when the slack signature is verified before calling the dopost method of the super class the body of the req object is read and is nulled out. Due to this the below line "String requestBody = req.getReader().lines().collect(Collectors.joining(System.lineSeparator()));" throws an exception.

I understand reading request body this way could be problematic for some cases.

If you could overload this method to also accept header and request body separately then it will work for the signed secret validation at the client end.

I don't understand your point here yet. If you mean having a method to read and store request body values, I'm fine with it.

private String cachedRequestBody;

protected String getRequestBody() {
    // read and cache the value
   return this.cachedRequestBody;
}

protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
    String contentType = req.getHeader("Content-Type");
    if (contentType != null && contentType.toLowerCase(Locale.ENGLISH).trim().startsWith("application/json")) {
        String requestBody = getRequestBody();
        // omitted
    } else {
        log.warn("Unexpected request detected - Content-Type: {}", req.getHeader("Content-Type"));
    }

}

Let me try to rephrase the issue that I am facing in the signed secret authentication for the events API.
The code you suggested above will perform the following in sequence:

Cache the request body
Enque the request
Pass the control to the subscribed event handler

My concern over here is that I want to validate the incoming request even before calling this function to enque the request and handle the event. This will ensure that any malicious attack or bad request will be rejected even before it hits the doPost method for enque.
So if I retrieve the request body for signature validation then it is no longer available in the HttpServletRequest object in the dopost method and your process fails.
Below is the code sample of what I am recommending:
// Method accepting header and request body separately
// this will allow the client to do the signed secret validation before hand and not loose the jslack's capability of handling the event queue
protected void doPostWithRequestBody(Map<String, String> header, String requestBody,HttpServletResponse resp){
    String contentType = header.getHeader("Content-Type");
    if (contentType != null && contentType.toLowerCase(Locale.ENGLISH).trim().startsWith("application/json")) {
       //String requestBody = getRequestBody(); Already have the request body in the function parameter
        // omitted
    } else {
        log.warn("Unexpected request detected - Content-Type: {}", req.getHeader("Content-Type"));
    }
}

    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
        Map<String, String> headerMap = new HashMap<String, String>();

        Enumeration headerNames = request.getHeaderNames();
        while (headerNames.hasMoreElements()) {
            String key = (String) headerNames.nextElement();
            String value = request.getHeader(key);
            headerMap.put(key, value);
        }
        String requestBody = req.getReader().lines().collect(Collectors.joining(System.lineSeparator()));
        doPostWithRequestBody(headerMap,requestBody,resp);
    }

Thoughts?

Ah you’re right. I totally thought that the servlet implementation does such validation but it doesn’t. It should be improved.

let me know if you would want me to work on it?

let me know if you would want me to work on it?

I can work on this but if you're interested in contributing to this library, of course, I welcome your PRs!

submitted the PR

The feature requested by @shubhvashisht here has been merged in #194.  I will release a new version today. If you have further comments regarding this, feel free to reopen this issue or open a new issue for similar topics.


qrtool: 0.10.10 -> 0.10.13

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/sorairolake/qrtool/releases.
meta.description for qrtool is: Utility for encoding and decoding QR code images
meta.homepage for qrtool is: https://sorairolake.github.io/qrtool/book/index.html
meta.changelog for qrtool is: https://sorairolake.github.io/qrtool/book/changelog.html
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.10.13 with grep in /nix/store/wi5vvzlap0by93vvdhiddl8fm6gsgix3-qrtool-0.10.13
found 0.10.13 in filename of file in /nix/store/wi5vvzlap0by93vvdhiddl8fm6gsgix3-qrtool-0.10.13

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

qrtool

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/wi5vvzlap0by93vvdhiddl8fm6gsgix3-qrtool-0.10.13 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A qrtool https://github.com/r-ryantm/nixpkgs/archive/72cdb9ba97d4f737b9ecad344d96e97196730f6b.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/72cdb9ba97d4f737b9ecad344d96e97196730f6b#qrtool

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/wi5vvzlap0by93vvdhiddl8fm6gsgix3-qrtool-0.10.13
ls -la /nix/store/wi5vvzlap0by93vvdhiddl8fm6gsgix3-qrtool-0.10.13/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

qrtool

Maintainer pings
cc @philiptaron for testing.

Result of nixpkgs-review pr 323293 run on x86_64-linux 1

1 package built:

qrtool


portstartupitem: add startupitem options so that ports can specify the user and group to run a launchd service as

This PR makes the following options available to Portfiles:
startupitem.user
startupitem.group

With these, ports can now specify the user and group that launchd will run the port's daemon process under.  These will create <UserName> and <GroupName> entries, respectively, in the launchd plist file. Per @ryandesign's comment, these options have been available in launchd since 10.4.
This was tested manually.  I wanted to check this in with proper tests, but was not having much success as I don't have enough of an understanding of the MacPorts internals.

Thanks, this should be useful. I tried it and the launchd plist it created looked correct.
Please limit the first line of the commit message to 50 characters. In base we don't enforce a component name prefix, so you have those extra characters available to you. If you need more than 50, leave a blank line and continue with paragraphs of up-to-72-character lines. Please add See: https://trac.macports.org/ticket/13807 to the end of the commit message.

OK, commit message fixed.
Also:

https://trac.macports.org/ticket/13807

13 years! 😱😱😱😱

I see these changes are approved, but I changed the commit message as requested.  Is this OK to merge?

I agree this should indeed be possible to specify. How does this interact with startupitems using daemondo? It will attempt to write a pid file to ${prefix}/var/run, which is owned by root. It cannot be written anymore when launchd already drops privileges. This is especially important for script startupitems (those with .start/.stop commands) as this is needed to kill/reload the daemon process.

Thanks @neverpanic

Why was this approved and merged, without any updates to either the guide or manpage for portfile?
The lack of any documentation updates completely undermine the usefulness of new features, as they might as well not exist. And we shouldn't need to search the release notes, to see whether something exists.
Going forward, perhaps new feature additions - or at least, those that introduce new keywords - shouldn't be merged without both?

I guess startupitems that use user and group will likely be unable to use daemondo. Since that's a choice the Portfile author has, and the default is not to set user or group, merging this will add new functionality but not break existing functionality. I'll thus merge this now – we can always improve user/group together with daemondo later.

Is this still accurate, as of the current MacPorts release? If so, what are the specific issues/limitations...?


add safe attribute

Relevant https://github.com/neo-project/neo/issues/1664
Doesn't matter if it is in the ABI or manifest, it should not be decided by the contract author

https://github.com/neo-project/neo/pull/2120#discussion_r537215041
This seems to be the more relevant description


Updates kube dependency to 0.43.

This is my first Rust Pull Request and I'm unsure whether I actually need to add the Cargo.lock changes or not.

Yes, the Cargo.lock is usually tracked by version control.

Ah, sorry. I must have missed this when doing the last release round. I would have merged this :|

Ah, sorry. I must have missed this when doing the last release round. I would have merged this :|


Initial pass of breadcrumbs for iOS

Breadcrumbs are supported on Android, as noted in #43. These changes add breadcrumb support to the iOS library, and updates the README with the basic usage.

Implementation notes

The breadcrumb interface mirrors the android implementation, adjusting the selector naming slightly for platform conventions.
breadcrumbs is added to the crash tab if any are recorded.
I assumed breadcrumbs are intended for recording user interactions and/or view loading. As such, the BugsnagBreadcrumbs container enforces use of the main thread for modification.
Breadcrumbs are stored in BugsnagConfiguration alongside metaData. I'm not sure if there is a better place for this.

Usage questions

Should breadcrumbs be cleared after recording an exception? What about multiple exceptions occuring without crashing the app, such as on OS X?

I love the appropriateness of that gif!
The idea for breadcrumbs is that they would largely be used by people to see how a crash occurred and to give them some ideas on reproduction. So you could use them for log like messages or user interactions - so it helps answer the how question when looking at a new crash.
Therefore I think these are independent of whether there has been a crash or not, so we shouldn't clear them when there is a crash or whatever, it should just snapshot them and send that with the bug report - so I think this is perfect!
I think that we need to make a small change to the BugsnagSink to send the data through to our servers. The code that is currently here will get KSCrash to write the crash report to disk, but then its the sink's responsibility to take that crash report and send it to Bugsnag. So you can see how severity is handled at https://github.com/bugsnag/bugsnag-cocoa/blob/master/Source/Bugsnag/BugsnagSink.m#L122 and https://github.com/bugsnag/bugsnag-cocoa/blob/master/Source/Bugsnag/BugsnagCrashReport.m#L83 for example.
Other than that I think it's all good! I also need to take a look into RFC3339 and its compatibility with how we are parsing dates on the backend.
Awesome work @kattrali!

I think that we need to make a small change to the BugsnagSink to send the data through to our servers. The code that is currently here will get KSCrash to write the crash report to disk, but then its the sink's responsibility to take that crash report and send it to Bugsnag.

Ah, got it. That makes perfect sense. I will update the request with a few adjustments to BugsnagSink to upload the breadcrumb data. :bread:

I also need to take a look into RFC3339 and its compatibility with how we are parsing dates on the backend.

Is there a better/more preferable format for this? It would be a small change to send unix timestamps instead, for example.

I think we use iso8601 so that it is still human readable when inspecting payloads and it looks like rfc 3339 is actually fairly compatible with that so we might be good as we are

Patched the sink to archive the breadcrumbs along with the rest of the event payload.

Merged manually in 7c70b627cc62117e2d6ef81951ac3b80cc4b0e65


State assignment via settings objects

I think that using operator= to set_state is powerful but there is arguably a drawback that should be discussed.
I take aliases everywhere to simplify the code and everywhere do:
x.y.z.foo()
or equivalently:
z = x.y.z
z.foo()
This is fine for method calls but assignment at the level of z is pure assignment (that is not forwarded to set_state).
This is Pythonic, but I don't like it.

Reopening, pending further discussions.

Will not change the behaviour of this.


Why

sc.parallelize(mrArray).toHBaseTable(tableName)
.toColumns("column1", "column2")
.inColumnFamily("base_info")
.save()
"Messages Make" is"Error:(55, 29) value toHBaseTable is not a member of org.apache.spark.rdd.RDD[Seq[Any]]
sc.parallelize(mrArray).toHBaseTable(tableName)"
^
Why?

Check if you have imported all implicits, as explained in the documentation. Also, mrArray must be a tuble or a mapped object in order to write it to a hbase table. If mrArray is an array, it won't compile.
Let me know if it works.

yes,mrArray is an ArrayBuffer.How to turn an ArrayBuffer to a mapped object?


Inconsistency of computations with different batch size

Please make sure that this is a bug. As per our
GitHub Policy,
we only address code/doc bugs, performance issues, feature requests and
build/installation issues on GitHub. tag:bug_template
System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): Yes
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Linux Ubuntu 18.04
TensorFlow installed from (source or binary): binary
TensorFlow version (use command below): 2.2.0
Python version: 3.6.9
CUDA/cuDNN version: 10.1
GPU model and memory: Tesla K80 11441MiB

Describe the current behavior
Computations with batch size 2 or two consecutive computations with batch size 1 lead to different results if the number of units is bigger than 64 (for tf.keras.layers.Dense) or the last dimension is equal to 1 (tf.matmul).
Describe the expected behavior
Results supposed to be same.
Standalone code to reproduce the issue
linear = tf.keras.layers.Dense(units=65)
data = 50*tf.ones(shape=[2, 93, 3286])
r = linear(data)
r_0 = linear(data[:1])
r_1 = linear(data[1:])
print(tf.reduce_max(tf.abs(r[:1]-r_0)/tf.abs(r[:1])), tf.reduce_max(tf.abs(r[:1]-r_0)))
print(tf.reduce_max(tf.abs(r[1:]-r_1)/tf.abs(r[1:])), tf.reduce_max(tf.abs(r[1:]-r_1)))

data_1 = 1.22222*tf.random.normal(shape=(2, 20, 10, 1))
data_2 = 0.37*tf.random.normal(shape=(2, 20, 10, 52))
r = tf.matmul(data_1, data_2, transpose_a=True)
r_0 = tf.matmul(data_1[:1], data_2[:1], transpose_a=True)
r_1 = tf.matmul(data_1[1:], data_2[1:], transpose_a=True)
print(tf.reduce_max(tf.abs(r[:1]-r_0)/tf.abs(r[:1])), tf.reduce_max(tf.abs(r[:1]-r_0)))
print(tf.reduce_max(tf.abs(r[1:]-r_1)/tf.abs(r[1:])), tf.reduce_max(tf.abs(r[1:]-r_1)))

@artem-s-shevchenko
I have tried in colab with TF version 2.2, nightly version. Please, find the gist here.You are also seeing the same behavior?
Thanks!

@artem-s-shevchenko
I have tried in colab with TF version 2.2, nightly version. Please, find the gist here.You are also seeing the same behavior?
Thanks!

@ravikyram
Not exactly same.
For tf.keras.layers.Dense:
tf.Tensor(1.754481e-05, shape=(), dtype=float32) tf.Tensor(0.00024414062, shape=(), dtype=float32)
tf.Tensor(1.754481e-05, shape=(), dtype=float32) tf.Tensor(0.00024414062, shape=(), dtype=float32)
For tf.matmul:
tf.Tensor(0.00043521042, shape=(), dtype=float32) tf.Tensor(4.7683716e-07, shape=(), dtype=float32)
tf.Tensor(0.00037936267, shape=(), dtype=float32) tf.Tensor(4.7683716e-07, shape=(), dtype=float32)

@ravikyram
Not exactly same.
For tf.keras.layers.Dense:
tf.Tensor(1.754481e-05, shape=(), dtype=float32) tf.Tensor(0.00024414062, shape=(), dtype=float32)
tf.Tensor(1.754481e-05, shape=(), dtype=float32) tf.Tensor(0.00024414062, shape=(), dtype=float32)
For tf.matmul:
tf.Tensor(0.00043521042, shape=(), dtype=float32) tf.Tensor(4.7683716e-07, shape=(), dtype=float32)
tf.Tensor(0.00037936267, shape=(), dtype=float32) tf.Tensor(4.7683716e-07, shape=(), dtype=float32)

Hi @artem-s-shevchenko, it's not related to Dense layer or matmul, but the reduction in TensorFlow backend is non-deterministic. If you change to test with np.testing.assert_allclose(r_0.numpy(), r_1.numpy()), you can find they are the same. There is an RFC in community https://github.com/tensorflow/community/pull/346.
https://colab.research.google.com/drive/1GlMBO3Ldek1QybLw01B-izVslBBZAVOy?usp=sharing

Hi @artem-s-shevchenko, it's not related to Dense layer or matmul, but the reduction in TensorFlow backend is non-deterministic. If you change to test with np.testing.assert_allclose(r_0.numpy(), r_1.numpy()), you can find they are the same. There is an RFC in community https://github.com/tensorflow/community/pull/346.
https://colab.research.google.com/drive/1GlMBO3Ldek1QybLw01B-izVslBBZAVOy?usp=sharing

Hi, @WindQAQ ,
If I try np.testing.assert_allclose(r[:1].numpy(), r_0.numpy())  or np.testing.assert_allclose(r[1:].numpy(), r_1.numpy()), problem is still present.

@artem-s-shevchenko Can you please share a gist showing AssertionError? I tried WindQAQ's attached gist and find that AssertionError is not raised.

https://gist.github.com/artem-s-shevchenko/17be8e0b03c3f76e2eefc7e1f19a3d80
https://gist.github.com/artem-s-shevchenko/daa582568968e0cc6423500e7f7b6b34

Was able to reproduce the issue in TF v2.5 ,please find the gist here..Thanks !

We make no guarantees of consistency if order of operations change, or if data layout changes.  Different code paths may be exercised, and they may use different intrinsics (e.g. in one case may use fused multiply-adds, but not in another).  The results should be consistent within some appropriate tolerance.

@artem-s-shevchenko,
Can you take a look at this comment and let us know if it helps?


The header content contains invalid characters TypeError: The header content contains invalid characters at ServerResponse.

hi , today i upgrade my node version to 4.4.4 LTS, and i found something wrong in  my old project.
the method i am using in my project
 res.redirect(`app.html?md=${url}`);

the url contains some chinese characters。
i find same error in github, https://github.com/nodejitsu/node-http-proxy/issues/964,
in  https://github.com/nodejs/node/commit/7bef1b790727430cb82bf8be80cfe058480de100#diff-286202fdbdd74ede6f5f5334b6176b5cR298,
the commit add a method called  _checkInvalidHeaderChar ,it will check the parameter.
when i am using  res.redirect  ,
 ，then the error occurs and my program exit.
i think setHeader should add  try catch in  https://github.com/expressjs/express/blob/master/lib/response.js#L1046  and
https://github.com/expressjs/express/blob/master/lib/response.js#L718
or using encodeURIComponent because i want to show title of the article in search bar.
res.redirect(`app.html?md=${encodeURIComponent(url)}`)

Hi! res.redirect expects you to give it a URL, as such you would be responsible to call encodeURIComponent if that is necessary for your string.

I know this is a semi-old issue, but the good news is that the underlying res.location will change in Express 4.14 to provide better behavior, including no longer throwing when you used your original code.


Patternflyelements.com should link to version 1 documentation for pfe elements

Currently, patternflyelements.com documentation is version 2 of PFE in pre-release.  We need to add a link to version 1.X.X documentation for those maintaining current elements in production.

I had a few thoughts on how to accomplish this

every netlify build has its own permalink
we can set up specific branches to alutomatically deploy to a given url, as well
We can configure [path-based redirects in netlify.toml[(https://docs.netlify.com/configure-builds/file-based-configuration/#redirects)

I think the above is more than enough to maintain a list of versions like v1 and v2 and eventually v3. I'd like it better if we could deploy by tag, and hey look here's a github action that does just that
https://stackoverflow.com/questions/61775854/how-to-use-github-actions-to-deploy-on-tag-to-netlify
more docs on that action it's pretty simple, just a single http call with curl, so if we need to extend it we can
if we pulled that off we could have:

a dropdown which lists versions by repo tag (v1, v2, etc)
a long lived permalink for which deploys to the major versions for each push to a semver-formatted tag (e.g. the v1 deploy would update when pushing to tag v1.12.4)
a netlify.toml file which gets (manually?) updated every time we want to add a version
and we can calculate the 11ty data for versions by reading the netlify.toml and using addGlobalData, no need to maintain a separate 11ty json file for that.

This sounds like a much more maintainable idea to me.  I like it.

@zeroedin you still want this one?

@zeroedin you still want this one?

Sure, I can take a stab at it.

last good 1.12 docs: https://61f9ac3d5f4a9200081bb953--patternfly-elements.netlify.app/


bpf: always track egress gateway connections

In order to reclaim orphan entries in the NAT table the agent uses the connection tracking state: if a NAT entry is not backed by a connection, it should be considered orphaned and can be reclaimed.
Currently the SNAT logic assumes that all connections that needs to be translated are already tracked. The only exception for this is connections originating from the local host, which are tracked by snat_v4_track_local().
In practice egress gateway is another case that requires special attention: in fact, all connections tunneled from a different node to a gateway node are currently not tracked. This means that whenever the CT garbage collector kicks in, all NAT entries for egress gateway will be deleted, potentially leading to connections breakage.
This commit fix this by making sure we always track these connections.
While at it, also rename snat_v4_track_local to snat_v4_track_connection.
Towards: #21346

/test

/test-1.24-4.19

/test-1.25-net-next

The expectation is that from-container would create the CT entry for any other connection, correct?

That's my understanding as well

Any chance of adding a test for this scenario? If we have a mechanism to trigger GC, I suppose we could even just check the NAT table before/after.

I thought about tests but I didn't come up with anything I was 100% happy with so I decided to get these changes reviewed first and defer tests:

I looked into bpf/tests/nat_test.c to add a new test case, but there's some work to do on mocking the NAT and endpoint maps, which I wasn't sure was worth to test just snat_v4_track_connection()
for e2e tests the best approach we have would be (I think) diffing sudo cilium bpf nat list | grep $IP:$PORT | wc -l before and after each connection, which again doesn't satisfies me 100%, so I wanted to spend some more time thinking about that

/test

for e2e tests the best approach we have would be (I think) diffing sudo cilium bpf nat list | grep $IP:$PORT | wc -l before and after each connection, which again doesn't satisfies me 100%, so I wanted to spend some more time thinking about that

Ack. Alternative might be to adapt the "established connection" test from https://github.com/cilium/cilium/pull/19880, and kick GC inbetween.

/test

/test

/test


Support displaying swagger.json when intermediate path routing is present

For example if you have an application load balancer that redirects:
http://myhost.example.com/my-first-app/resource/in/app

to:
http://internal.host/resource/in/app

Then assuming your flask/connexion app listens on internal.host and your basePath is /resource, then accessing http://myhost.example.com/my-first-app/resource/ui will not work, since it will try to fetch http://myhost.example.com/resource/swagger.json, unknown to the load balancer.

Coverage remained the same at 100.0% when pulling 29b140f61a250e60cf7e7f3efb5b1aad8df1bc83 on stopmachine:master into 9f20c5ffb70ccde05193077e677da2a09af362c9 on zalando:master.

@stopmachine thanks for this PR. We would also like to use it this way and see it get merged. If there is any help needed, I can contribute.

closing this because swagger-ui is no longer vendored in connexion (as of v2.0)


WIP: Add converter from YARP AST to parser gem AST

A very early prototype for it.
Not sure where this code should live yet, just sharing the PR in case it interests others.
See https://github.com/ruby/yarp/issues/1237#issuecomment-1684896663

Can you open any changes over on https://github.com/kddnewton/parser-yarp?

@eregon can you check out the repo I posted? Want to make sure we don't duplicate effort here

Ah just saw this now, looks like you did most/all of it already :)
It was fun to do anyway, I'll check that repo soonish.


Podpreset initializer

This PR implements PodPreset functionality using Kubernetes Initializers.

Note for Reviewers *
This PR is built on top of branch which implements PodPreset APIs.
I have called main object "initializer" to reflect the functionality better but I am open to renaming it podpresetController if people think that is the correct name for it.

I am confused. If the point of the initializers is that they are separate and not compiled in to our apiserver, do we really want them compiled into the controller? Shouldn't it be it's own thing? This is getting kind of mind-bending for me.

@MHBauer Re: Initializer "being separate" refers to the fact that they are NOT compiled in kubernetes core api-server. They do need to be compiled in an external controller (in this case svc-catalog controller) and if they need any API resource for their behavior like in our case PodPreset, you need an api-server as well for resource definition as well.

@pmorie @jpeeler is there anything useful left in this PR after you've merged #1694 We should probably close it.

If you really want to close this now you can, but I have a PR that is a rebased version of the code here coming soon. And I'll make sure to close this PR once that PR is submitted. But yes, this code is required for pod presets to actually do anything.


Bug/library facet display error

Delivers #92470088

Coverage remained the same at 98.17% when pulling 9b9abc765fff30b95e85dbfee1489ff19540e65d on bug/library_facet_display_error into 25cd2ac11e9d032dba864c99db851575452e500c on development.

Coverage remained the same at 98.17% when pulling 9b9abc765fff30b95e85dbfee1489ff19540e65d on bug/library_facet_display_error into 25cd2ac11e9d032dba864c99db851575452e500c on development.


[BUG] ToString compile error with fluent accessors

The association of Builder and Accessors(fluent = true) annotations generates compile-time errors in toString implementation of Builder.
  public String toString() {
            return "AutomaticPeriodCalculationLine.AutomaticPeriodCalculationLineBuilder(automaticPeriodCode=" + this.automaticPeriodCode() + ", targetPeriodCode=" + this.targetPeriodCode() + ", percentage=" + this.percentage() + ")";
        }

This.automaticPeriodCode() doesn't work because there isn't generated accessors on the builder class.
Must be field access ->    this.automaticPeriodCode (as with accessors fluent=false)

Can you please provide a complete minimal java example to reproduce the problem?

Nothing special just combine @builder and @accessors(fluent=true) then delombok the class

Can you please provide a complete minimal java example to reproduce the problem? That helps us.

No response from reporter, closing issue.


"emitDecoratorMetadata" gets compile error "This dependency was not found..."

Set "emitDecoratorMetadata" to true in tsconfig.json get compile error like following in my vue project(+vue-class-component, vue-property-decorator, vuex, vue-router, axios, etc).
 ERROR  Failed to compile with 38 errors                                                                          01:35:07

This dependency was not found:

* @/domain in ./node_modules/cache-loader/dist/cjs.js??ref--13-0!./node_modules/babel-loader/lib!./node_modules/ts-loader?
?ref--13-2!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/compo
nents/button/FollowButton.vue?vue&type=script&lang=ts&, ./node_modules/cache-loader/dist/cjs.js??ref--13-0!./node_modules/
babel-loader/lib!./node_modules/ts-loader??ref--13-2!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-
loader/lib??vue-loader-options!./src/components/button/PraiseButton.vue?vue&type=script&lang=ts& and 36 others

To install it, you can run: npm install --save @/domain

@/domain is a directory equal to /src/domain.
@/domain/index.d.ts is a js file that including various of interfaces based on backend types. Like this:
interface Pair<A,B>{
  first:A
  second:B
}

I don't even know why this issue happened.

js file -> ts file

Having the same issue if emitDecoratorMetadata: true is set in tsconfig.json (This setting is required by inversify-props). But if it is set, the compiling breaks because my custom types can not be loaded anymore:
 ERROR  Failed to compile with 2 errors                                                                                7:20:45 PM

This dependency was not found:

* @/types/vue in ./node_modules/cache-loader/dist/cjs.js??ref--15-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/ts-loader??ref--15-3!./node_modules/cache-loader/dist/cjs.js??ref--1-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/AnyVueComponent/AnyVueComponent.vue?vue&type=script&lang=ts&, ./src/mixins/my-feature.mixin.ts

To install it, you can run: npm install --save @/types/vue
ERROR  Build failed with errors.

The file /types/vue.d.ts looks like this:
export type VeeValidateErrors = {
  [name: string]: string[]
}

export interface ProceedEvent extends Events {
  isAutoProceed: boolean
}

The file /src/mixins/my-feature.mixin.ts just imports the interface:
import { ProceedEvent } from '@/types/vue'


LUX Program Package Update.

What:
Updates the LUX program package to remove firstInitProg program package as a dependency.
Why:
To eliminate firstInitProg program packages as a dependency for the LUX program package.

Even so, I'm curious if there is a way to do this without a Hammer's change at all.

This is something that can be done without changing hammers, BUT, there is a single good argument for this specific function.  Basically, it allows you to use something like our 'gSimulation' bit to control the state of the simulation status for a program.  If used correctly, you could return a local process variable and populate were needed without creating a dependency on something outside of the scope of the program.  I'm open to talking about this if you wish.

Even so, I'm curious if there is a way to do this without a Hammer's change at all.

This is something that can be done without changing hammers, BUT, there is a single good argument for this specific function. Basically, it allows you to use something like our 'gSimulation' bit to control the state of the simulation status for a program. If used correctly, you could return a local process variable and populate were needed without creating a dependency on something outside of the scope of the program. I'm open to talking about this if you wish.

Yes, I do see the value in having the a 'gSimulation' bit and using it in the way you have described (I also tested that this functionality worked). I am good with that explanation as to why to update hammers and have it as a dependency as long as the Hammer's PR gets approved 👍


Remove Microsoft.NETCore.UniversalWindowsPlatform from wizard data

To support multiple versions, the installation logic for the Microsoft.NETCore.UniversalWindowsPlatform should move to the Universal template wizard.

@branh,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


CloudWatch Logs Log Group already exists

Description
I've created a cluster and destroyed it. When creating again the Log Group complains that it already exists. Therefore the destroy isn't deleting it.

[X] ✋ I have searched the open/closed issues and my issue is not listed.

⚠ Note
Before you submit an issue, please perform the following first:

Remove the local .terraform directory (! ONLY if state is stored remotely, which hopefully you are following that best practice!): rm -rf .terraform/
Re-initialize the project root to pull down modules: terraform init
Re-attempt your terraform plan or apply and check if the issue still persists

Versions

Module version [Required]: 19.7.0

Terraform version:

Terraform v1.3.9

Provider version(s):

provider registry.terraform.io/fluxcd/flux v0.23.0
provider registry.terraform.io/gavinbunney/kubectl v1.14.0
provider registry.terraform.io/gitlabhq/gitlab v15.8.0
provider registry.terraform.io/hashicorp/aws v4.54.0
provider registry.terraform.io/hashicorp/cloudinit v2.2.0
provider registry.terraform.io/hashicorp/kubernetes v2.18.0
provider registry.terraform.io/hashicorp/tls v4.0.4- Provider version(s):

Reproduction Code [Required]

Steps to reproduce the behavior:
Create cluster
Destroy cluster
Create cluster with same name
Expected behavior
Cluster and all resources created successfully.
Actual behavior
Terraform exists due to log group already exists with that name.
Terminal Output Screenshot(s)
╷
│ Error: creating CloudWatch Logs Log Group (/aws/eks/mgmt-test123/cluster): ResourceAlreadyExistsException: The specified log group already exists
│
│   with module.eks.aws_cloudwatch_log_group.this[0],
│   on .terraform/modules/eks/main.tf line 105, in resource "aws_cloudwatch_log_group" "this":
│  105: resource "aws_cloudwatch_log_group" "this" {
│

Additional context

#2277

this has already been addressed in previous issues

Reference?

https://github.com/terraform-aws-modules/terraform-aws-eks/blob/master/main.tf#L294-L318


After having deleted an item and adding new item (replacing an exiting item) throws an error

Steps to reproduce

Assume that I have a tilled layout with 4 items
Delete any one of the 4 items
Now add a new item <----  This is something not possible, throws an error

Could you please check if there is any work around for the above use case?
Thank you so much.

Are you trying programmatically? If so, you may have received this error:

Invalid argument(s): DockingArea already has been disposed.

This happened to me because I tried to keep the reference to a DockingItem but when changing the Layout, the objects are rebuilt.
I'm changing the API to make handling the layout easier. A method I'm already creating is "find".


Porjection:  Geographic Coordinate System WGS1984 to Projected Coordinate System EMEP50KilometerGrid

This issue was imported from CodePlex
AlamoMan wrote 2010-07-14 at 21:07
When a coordinate is projected from a GCS WGS1984 to a PCS EMEP50KilometerGrid (Europe PCS) the longitude coordinate is off by 1.87730389247131 decimal degrees from proj4. The unit test is available in the ProjectionTestCSharp.

This test works fine.


FEAT: Adding pysystem-coupling to metapackage

As title says.

Missing: image for PySystem coupling. Waiting on inputs from PySystem coupling team

@RobPasMue I don't know why the dev team for System Coupling decided to name the library PySystemCoupling (all as one word), but this is what they used throughout their documentation.

Thanks @PipKat for your contributions! :) Yeah, we'll keep it as they name it. Let's merge it as is - and once we get the image, we will update the repo.


Follow-ups of incremental Groovy compilation

Context
This PR:

Closes https://github.com/gradle/gradle/issues/9785 and https://github.com/gradle/gradle/issues/9380
Adds tests for

Multiple classes in a same source Groovy file.
Moving files between source set roots

Previously, removing a source directory from a source set would break the Java (and Groovy) incremental compiler (https://github.com/gradle/gradle/issues/9380). This PR detects this case and runs a full recompilation.
It also records relative path instead of absolute path in Groovy incremental compilation to make it build-cache-friendly.

@wolfs PTAL!

Thanks @wolfs !


OTP Authentication Malfunctioning

Hi, I am trying to setup OTP. from basic settings forced OTP and when I login it shows QR code I scan with Google auth and it gets registered, but after submitting the code I get 500 error
  File "/usr/lib/python3.10/site-packages/flask/app.py", line 2073, in wsgi_app
    response = self.full_dispatch_request()
  File "/usr/lib/python3.10/site-packages/flask/app.py", line 1519, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/usr/lib/python3.10/site-packages/flask/app.py", line 1517, in full_dispatch_request
    rv = self.dispatch_request()
  File "/usr/lib/python3.10/site-packages/flask/app.py", line 1503, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
  File "/app/powerdnsadmin/routes/index.py", line 737, in welcome
    good_token = user.verify_totp(otp_token)
  File "/app/powerdnsadmin/models/user.py", line 98, in verify_totp
    return totp.verify(token, valid_window = 5)
  File "/usr/lib/python3.10/site-packages/pyotp/totp.py", line 80, in verify
    if utils.strings_equal(str(otp), str(self.at(for_time, i))):
  File "/usr/lib/python3.10/site-packages/pyotp/totp.py", line 56, in at
    return self.generate_otp(self.timecode(for_time) + counter_offset)
  File "/usr/lib/python3.10/site-packages/pyotp/otp.py", line 35, in generate_otp
    hasher = hmac.new(self.byte_secret(), self.int_to_bytestring(input), self.digest)
  File "/usr/lib/python3.10/site-packages/pyotp/otp.py", line 49, in byte_secret
    missing_padding = len(secret) % 8

@AzorianMatt  currently there is no way to make OTP work?  I see last release was on summer since that time no one noticed issue? Do you think product okay to be used for production environments?

@allahshukur-ahmadzada as far as I now, OTP works just fine. I'm not sure what issue you're having here exactly, but we'll hopefully get to figuring it out. One of the other contributors was just doing testing last week involving OTP so it presumably works. The product is okay for production environments and is currently being used by many as such. If you're having issues with the main branch of the project which is a bit unstable right now, I recommend you switch to the 0.3.0 release that is stable.

Thank you @AzorianMatt, that is how I guessed , I did like this from settings makde otp_force enabled and on next login it showed me QR for OTP registration, now sure if this is right way.

@allahshukur-ahmadzada you're welcome. Admittedly, I have not really played around with the global OTP setting thus far. I believe if you just enable it on a per user basis, that much is at least properly functional. I will try to make it a point to test this further in the coming week or so as time permits.

I cannot reproduce the error you mention when I use the current dev branch.
I changed settings > Basic > otp_force to On (this was Off) and otp_field_enabled was already On.
Then I logged out and logged in again. This presented me with a screen to setup OTP. With that information I entered a OTP code on the screen and then on the login screen I was able to login using my username, password and OTP code.

@allahshukur-ahmadzada will you please verify if you still have this issue using the latest release of 0.4.0?

@allahshukur-ahmadzada I'm closing this issue as I was unable to reproduce it using the current dev branch which is in step with the 0.4.1 release. As far as it relates to this code, 0.4.0 should also prove to work as intended.

I'm having this same issue.
I'm using LDAP (AD) as the external authentication provider.  When I force OTP, I get the OTP setup screen with the QR code.  When I scan it and enter the code, I get a 500 error and the tracebacks below.
One note that might help is that when the OTP setup screen pops up, "None" is displayed in the "Your secret key is:" box, instead of the key.  There is no debug error in the logs prior or after the OTP setup screen is shown, only after the code is first entered.
Tracebacks:
Traceback (most recent call last):
File "/usr/lib/python3.10/site-packages/flask/app.py", line 2073, in wsgi_app
response = self.full_dispatch_request()
File "/usr/lib/python3.10/site-packages/flask/app.py", line 1519, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/usr/lib/python3.10/site-packages/flask/app.py", line 1517, in full_dispatch_request
rv = self.dispatch_request()
File "/usr/lib/python3.10/site-packages/flask/app.py", line 1503, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
File "/app/powerdnsadmin/routes/index.py", line 864, in welcome
good_token = user.verify_totp(otp_token)
File "/app/powerdnsadmin/models/user.py", line 99, in verify_totp
return totp.verify(token, valid_window = 5)
File "/usr/lib/python3.10/site-packages/pyotp/totp.py", line 80, in verify
if utils.strings_equal(str(otp), str(self.at(for_time, i))):
File "/usr/lib/python3.10/site-packages/pyotp/totp.py", line 56, in at
return self.generate_otp(self.timecode(for_time) + counter_offset)
File "/usr/lib/python3.10/site-packages/pyotp/otp.py", line 35, in generate_otp
hasher = hmac.new(self.byte_secret(), self.int_to_bytestring(input), self.digest)
File "/usr/lib/python3.10/site-packages/pyotp/otp.py", line 49, in byte_secret
missing_padding = len(secret) % 8
TypeError: object of type 'NoneType' has no len()
[2023-04-27 13:12:56,788] [app.py:1449] ERROR - Exception on /welcome [POST]
Traceback (most recent call last):
File "/usr/lib/python3.10/site-packages/flask/app.py", line 2073, in wsgi_app
response = self.full_dispatch_request()
File "/usr/lib/python3.10/site-packages/flask/app.py", line 1519, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/usr/lib/python3.10/site-packages/flask/app.py", line 1517, in full_dispatch_request
rv = self.dispatch_request()
File "/usr/lib/python3.10/site-packages/flask/app.py", line 1503, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
File "/app/powerdnsadmin/routes/index.py", line 864, in welcome
good_token = user.verify_totp(otp_token)
File "/app/powerdnsadmin/models/user.py", line 99, in verify_totp
return totp.verify(token, valid_window = 5)
File "/usr/lib/python3.10/site-packages/pyotp/totp.py", line 80, in verify
if utils.strings_equal(str(otp), str(self.at(for_time, i))):
File "/usr/lib/python3.10/site-packages/pyotp/totp.py", line 56, in at
return self.generate_otp(self.timecode(for_time) + counter_offset)
File "/usr/lib/python3.10/site-packages/pyotp/otp.py", line 35, in generate_otp
hasher = hmac.new(self.byte_secret(), self.int_to_bytestring(input), self.digest)
File "/usr/lib/python3.10/site-packages/pyotp/otp.py", line 49, in byte_secret
missing_padding = len(secret) % 8
TypeError: object of type 'NoneType' has no len()

@Zebble that note about the nun value in the secret key is valuable to know. It seems that would be a good indicator to follow for finding the cause of this issue.
Thank you for your addition.

Can this be-reopened then or should I open a new issue?