failed to setup since January 3rd

Describe the bug
Since januari 3rd, none of the sensors are available in Home Assistant anymore.
The integration worked as expected up to that point, no changes have been made to the setup or to the Eufy Security App settings.
Devices are in home mode, so all triggers are active and work within the native app.
To reproduce
Steps to reproduce the behavior:

Go to 'settings'
Click on de 'devices and services'
Eufy Security integrations says 2 devices, 25 entities, but shows failed to setup error (see log below).

Additional information
Go to Settings -> System -> Repairs -> Click on 3 dots (...) -> System Information and get Version and Installation Type to below fields;

Home Assistant Installation Type (OS - Supvervised - Core): OS
Home Assistant Core Version: core-2022.12.9
Eufy Security Add-on Version: Eufy Security Add-on (1.3.0)
Eufy Security Integration Version: /

Hardware Information;

Camera Model: T8210

Debug Logs from Home Assistant (https://github.com/fuatakgun/eufy_security/discussions/624)

Logs from Eufy Security Add-on (either from Add-ons page of Home Assistant or Docker output):

This error originated from a custom integration.
Logger: custom_components.eufy_security
Source: custom_components/eufy_security/websocket.py:58
Integration: Eufy Security (documentation, issues)
First occurred: January 4, 2023 at 13:28:47 (1 occurrences)
Last logged: January 4, 2023 at 13:28:47
eufy_security - Exception - process_messages: 'connected' - traceback: Traceback (most recent call last): File "/config/custom_components/eufy_security/websocket.py", line 56, in process_messages await self.on_message(msg) File "/config/custom_components/eufy_security/websocket.py", line 67, in on_message await self.message_callback(message) File "/config/custom_components/eufy_security/coordinator.py", line 287, in on_message await self.process_driver_connect_response(message["connected"]) KeyError: 'connected' - message: WSMessage(type=<WSMsgType.TEXT: 1>, data='{"type":"result","success":true,"messageId":"driver_connect","result":{"result":true}}', extra='')

This error originated from a custom integration.
Logger: homeassistant.config_entries
Source: custom_components/eufy_security/coordinator.py:184
Integration: Eufy Security (documentation, issues)
First occurred: January 4, 2023 at 13:29:26 (1 occurrences)
Last logged: January 4, 2023 at 13:29:26
Error setting up entry localhost for eufy_security
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 372, in async_setup
result = await component.async_setup_entry(hass, self)
File "/config/custom_components/eufy_security/init.py", line 51, in async_setup_entry
await coordinator.initialize()
File "/config/custom_components/eufy_security/coordinator.py", line 87, in initialize
await self.set_devices()
File "/config/custom_components/eufy_security/coordinator.py", line 163, in set_devices
if await self.async_get_device_properties() is False:
File "/config/custom_components/eufy_security/coordinator.py", line 184, in async_get_device_properties
for device in self.devices.values():
AttributeError: 'NoneType' object has no attribute 'values'

Would you share your device with me in case further debugging required? (Yes/No):

Additional context
Add any other context about the problem goes here.

Same issue, no sensors available and the integration keeps showing the "Configuration Retry" warning.
I haven't changed any settings in the webcams and Home Assistant.
The Official Eufy App continues to function normally.

try uninstall docker add-on and this plugins, and install it again - it helped me and all devices started working properly 😀

please disable 2fa to be sure that it is not the root case

please disable 2fa to be sure that it is not the root cause
I have noticed that having 2fa and captcha at the same time causes issues

Hi @fuatakgun, hi @witold-gren
I tried disabling F2A via the Eufy app and uninstalling the Home Assistant integration and add-on.
After uninstalling everything I restarted Home Assistant and first I tried to install the add-on again.
I entered the data, but this error is reported:

I have not changed the username and password to the account and in fact restoring the old Home Assistant backup in the add-on no error is reported, but this message: INFO Eufy Security server listening on host <IP_ADDRESS>, port 3000
but the integration keeps trying to connect showing the exclamation mark and leaving the sensors unknown

Same issue for me. This is the log I'm seeing:
2023-01-17 22:49:36.555 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry <IP_ADDRESS> for eufy_security
File "/config/custom_components/eufy_security/init.py", line 50, in async_setup_entry
File "/config/custom_components/eufy_security/coordinator.py", line 39, in initialize
File "/config/custom_components/eufy_security/eufy_security_api/api_client.py", line 72, in connect
File "/config/custom_components/eufy_security/eufy_security_api/api_client.py", line 148, in _set_schema
File "/config/custom_components/eufy_security/eufy_security_api/api_client.py", line 345, in _send_message_get_response
custom_components.eufy_security.eufy_security_api.exceptions.FailedCommandException: {'type': 'result', 'success': False, 'messageId': 'set_api_schema.cb5d0fbb684446af835c757dabc7c5f5', 'errorCode': 'schema_incompatible'}

@jcknox please open a new bug and follow the template

Thanks for the note. I thought my problem was the same.
On Tue, Jan 17, 2023 at 11:42 PM Fuat Akgün @.***>
wrote:

@jcknox https://github.com/jcknox please open a new bug and follow the
template
—
Reply to this email directly, view it on GitHub
https://github.com/fuatakgun/eufy_security/issues/683#issuecomment-1386519530,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANZKYXBKMLGM4YZFVKOBY5TWS57DTANCNFSM6AAAAAATZB4NNU
.
You are receiving this because you were mentioned.Message ID:
@.***>

Had the same issue.  Was simply unable to get it working properly with the add-on as-is.  I couldn't even get to a config screen to update the IP, user/password.
WARNING: MAKE BACKUPS BEFORE MAKING CHANGES!!!
I installed a separate docker image for the bropat/eufy-security-ws container (I have another VM running Docker for other stuff).
docker run -e -d --name eufy-security-ws USERNAME=[myeufylifeusername] -e PASSWORD=[myeufylifepassword] -e COUNTRY=US -e TRUSTED_DEVICE_NAME=eufyclient -v "$(PWD)"/data:/data -p 3000:3000 bropat/eufy-security-ws:1.3.0
Then I modified the core config file:  /config/.storage/core.config_entries
Look for the section containing "domain": "eufy_security"
Update as follows: changing the IP from <IP_ADDRESS> to whatever docker host you installed to above
      {         "entry_id": "02d49ffe698069484838b346c1fc1aec",         "version": 1,         "domain": "eufy_security",         "title": "**[dockerhost_ip or whatever name you want]**",         "data": {           "host": "**[dockerhost_ip or dns_name]**",           "port": 3000         },         "options": {           "sync_interval": 600,           "rtsp_server_address": "**[dockerhost_ip or dns_name]**",           "rtsp_server_port": 8554,           "ffmpeg_analyze_duration": 1.2,           "generate_ffmpeg_logs": false,           "no_stream_in_hass": false,           "name_for_custom1": "Custom 1",           "name_for_custom2": "Custom 2",           "name_for_custom3": "Custom 3"         },         "pref_disable_new_entities": false,         "pref_disable_polling": false,         "source": "user",         "unique_id": null,         "disabled_by": null       }

Now the issue is evolved into response data is missing one, i will not spend time to answer.


audio-echo/oboe opensl es How can I set disable/enable echo

When I edit some code in here:
AudioPlayer::ProcessSLCallback
I can disable echo effect, but I can't output to recorder/file in audio_main.cpp
How can I disable sound come from recorder loopback into player but still keep sample_buff for output to file. Here is my output to file code:
/*
 * simple message passing for player/recorder to communicate with engine
 */
FILE *fos = nullptr;
bool isEcho = false;
bool isRecord = false;
// 96MB
char buffer[100663296];

bool EngineService(void *ctx, uint32_t msg, void *data) {
  assert(ctx == &engine);
  switch (msg) {
    case ENGINE_SERVICE_MSG_RETRIEVE_DUMP_BUFS: {
      *(static_cast<uint32_t *>(data)) = dbgEngineGetBufCount();
      break;
    }
    case ENGINE_SERVICE_MSG_RECORDED_AUDIO_AVAILABLE: {
      // adding audio delay effect
      sample_buf *buf = static_cast<sample_buf *>(data);
      assert(engine.fastPathFramesPerBuf_ ==
             buf->size_ / engine.sampleChannels_ / (engine.bitsPerSample_ / 8));
      engine.delayEffect_->process(reinterpret_cast<int16_t *>(buf->buf_),
                                   engine.fastPathFramesPerBuf_);

      if (isRecord) {
        if(fos == nullptr){
          fos = fopen("/sdcard/recorded_audio.pcm", "wb");
          // big buffer and slow speed writing for ignore crash I/O, BUFFER SIZE: 32MB
          setvbuf(fos, buffer, _IOFBF, 33554432);
        }

        fwrite(buf->buf_, 1, buf->size_, fos);
      }

      break;
    }
    default:
      assert(false);
      return false;
  }

  return true;
}

anything I did with player callback, I can't get out put to file, something wrong.

I think I must saw this somewhere else: you could not write file from Audio callback thread, disk access takes too long, it busts the audio callback times, then quickly you lost all of the audio buffers: loop is broken ( how could add some code to see how long does it take when opening a file? then calculate the the buffers we have, buffer length, sampling frequency, you got all the time you have to finish the file operation. Interesting but NOT helpful to solve the problem ).
you might have better chance to:

Create another pair of queues to use between recording and your-file-writing
create another file writing thread( make it ready first )
recorder  -> one queue (A) -->file-writing
recorder <- the other queue (B) <- free buffer
your writing thread: wakeup when there is audio available on the queue A, write the file, return the audio buffer to B. you might also also accumulate those small buffers into a big buffer then write disk ( making the writing less frequent.

It does not have to be real time, so you could try ( this sample is for real time audio, you really do not have to use those queue pattern ): create a huge memory buffer to host all of the audio samples, then when you done recording, write to a file ( not good, bug might be dirty / quick for POC purpose ).

(I am going to close the issue, Stackover flow might be good for this type of question about how to processing audios, concept is same for PC and mobile )


Ethics debate

since people where going of topic in #2540 i made this issue so people can continue here

Ok how begin teh develop of new api to inform the status?

this issue is completely useless, popcorn are already so hlarious in the original thread YOLOLO

No need to debate, just let it be..

Well, let me start the debate off with a question then: Should we embrace the fact that the bots are currently not intruding the realm of human players, or do we want to develop it into a full client with gym battle support?

or do we want to develop it into a full client with gym battle support?

We already decided this before. Take a look at the readme.md:
Gym Battles
This bot takes a strong stance against automating gym battles. Botting gyms will have a negative effect on most players and thus the game as a whole. We will thus never accept contributions or changes containing code specific for gym battles.

There are a lot of "donate this" and "donate that" posts in the original discussion, and we now have to make a big step into that, not just avoid the discussion because of fear and loathing.
EFF: https://supporters.eff.org/donate/
XKCD (using bitcoin!): 14Tr4HaKkKuC1Lmpr2YMAuYVZRWqAdRTcr
Donate now, to make Bot great again!

Creating bots to automate some of the more mundane aspects of a video game seems like a fair response to a game structure that is often designed to profit from inconvenience.
That said, the scalability and convenience of bots wreaks havoc on an in-game meta, and no game is fun when its just bots fighting other bot (though it is hilariously dystopian).
In any case, my biggest issue aligns with @ironbishop; the cost/benefit of building these tools for the people who work on them is just not there. As this article suggests the biggest cost of these projects is time, not capital.
I love open source, and I am amazed that people loved something like Pokemon Go enough to reverse engineer an API by packet sniffing, but building something like that requires a ton of time from lots of people, and we all evidently profit from the hard work of a few. We have to align incentives to keep these sort of projects up.
As a random aside, I was considering building a Patreon-esque service for open source code projects. Something that could more easily allow crowdfunding for these open source projects, and incentivize devs to devote their time to it. I love cryptocurrencies as much as the next dude, but it's not mainstream enough just yet to be a consistent funding vehicle.
Would anyone here participate in a service like that?

ok it'run.
almost.

I like the game, but actually is hardest find other pokemon, only appear pidgey and rattata, maybe venonat, spearow, weedle, caterpie and later exegutte, eevee. and later is esporadic or in only one place, is hardest find other pokemon, no make easy this, but later appear a pokemon your want to find where and nothing, or dissapear, and is frustating, with this tools you go to pokemon that you need and go to places while you working or rest and later you go to safes places to find pokemon

personaly i'm just using it to get perfect IV pokemon :P i've been making 1.5 hour biking detours from and to my work to catch pokemon and bash gyms but the chance of getting 100% perfection pokemon is so intensly slim, i got about 200 pokemon above 90% perfection and only 1 is 100%. anyway im not planning on padding my pokedex with bot pokemon just to get the IV trained beasts i desire

I want to pad my pokedex, but not batte in the gym. I just consider pokemon go a single game. When Niantic update the game and made it hard to get the 10km eggs, which increase the difficulties to catch rare pokemon, I find there is no way to pad my pokedex except spent a lot of time to hang out all day. The game became boring. This bot is kind of a tool to compete with the game designer.
However, I personaly do not support adding the automatic battle system. Because this would effect too much to the normal player, who minght pay Niantic money. And these money minght be used to build some intereset functions to attract people pay their money, which also provide fun to all the people. If no body play the game, we are also loser.

Was there really a need to continue this discussion? lol

This is probably the only issue about "Ethics debate" that I can find on GitHub :smile:

The dev team on this bot have agreed that we will never accept money for the bot. That includes charging for it, donations, or otherwise. We are here for the love of the game, and a love for the community.
In regards to ethics, we have stated that we will never include anything in our bot specifically for battling gyms. https://github.com/PokemonGoF/PokemonGo-Bot#gym-battles
There may be more things we need to take a "stance" on in the future, but for now this has been sufficient.


[MRG] Add Guix buildpack

Hi!  This patch adds a backend that uses the GNU Guix package manager.  Guix provides reproducible software environments, transparency and provenance tracking.  Coupled with a channels.scm file, it allows users to pin to a specific Guix revision from which the set of packages listed in their manifest.scm is deployed, thereby supporting very fine-grain reproducibility.
Let me know what you think

Hi @yuvipanda.  I can reply on the Nix vs. Guix bit (I'm a Guix co-maintainer).  :-)
Guix and Nix are independent projects with different code bases.  The tools are both "functional package managers", which sets them apart from other tools out there; you'll find some of the core concepts are the same, and Guix borrowed them from Nix (Guix's build daemon is based on that of Nix).
Apart from that, the user interfaces are different (in Guix we try hard to make the CLI accessible to non-experts, to offer customization options, and to provide good integration for a variety of software deployment tools), the packages they provide are different (e.g., Guix insists on free software built from source as a way to improve transparency and security), and so on.
There's a growing scientific computing community around Guix with a focus on high-performance computing (HPC) and reproducible science.  I'm confident there'll be interest in keeping Guix support afloat in repo2docker.
Let me know if you need more info!

@civodul Thank you for your explanations - that sounds good enough to me. Let's working on getting stuff outside of $HOME and work towards getting this deployed! \o/
If you rebase your PR, it should also fix the failing docker build and build docs as well.

Thanks for your feedback @yuvipanda, what do you think now ?

Thanks for addressing these, @hulecomte! I still haven't managed to test this locally, but hope this is all still useful.
To respond to #1048 (comment), IMO we shouldn't hand-move things installed with another package manager (in this case, apt). If you try to use apt to remove it, I'm sure it'll take a bunch of other packages with it. IMO, this means we shouldn't try to do that, since it will just silently break other things. We already do this with nix, conda, etc - IMO that's what we should do here too.
When the container runs and the user tries to do pip install numpy, it should automatically use the 'correct' python installed - in this case, the guix one. For example, in the conda buildpack (
https://github.com/jupyterhub/repo2docker/blob/f07111c4a58220263562f726fb55288da57fe71f/repo2docker/buildpacks/conda/__init__.py#L54
), just the PATH is enough to 'do the right thing'. And /usr/bin/python3 is never used.
Let's try do the same here?
Thanks for working with me through this!

Hey yuvipanda! I'm currently trying that but it seems I still can use python while using bash script to test the buildpack...Maybe I am not doing it well enough? What do you think ?
Anyway, I don't now why lint test is failing and I don't know how it works too. How can I reproduce it locally ?
Thanks!

Hey @yuvipanda here are some updates and news:
-I modified the doc and the guix-install.bash as you suggested.
-Added a PATH 'do to the right thing' as we discussed it previously.
What do you think?

Hi @yuvipanda & all! Would be great if @hulecomte's work could get in.  :-)
Is there anything left that you think we should do?
Thanks in advance!

Hi @yuvipanda, could you take another look at this PR?
Thanks in advance.

I'm very excited about this addition.  Are there any other obstacles to getting this merged?

Hi! Any update here?


Post 0.40.0 release: disable TravisCI

We only use TravisCI for generating docs, but once 0.40.0 is published, all docs and links will reside on docs.rs. 🎉

Done!


Uncaught TypeError: Cannot read property 'selectLine' of undefined

[Enter steps to reproduce below:]

...
...

Atom Version: 0.176.0
System: Mac OS X 10.10.2
Thrown From: Atom Core
Stack Trace
Uncaught TypeError: Cannot read property 'selectLine' of undefined
At /Applications/Atom.app/Contents/Resources/app/src/text-editor-component.js:767

TypeError: Cannot read property 'selectLine' of undefined
  at [object Object].module.exports.React.createClass.onMouseDown (/Applications/Atom.app/Contents/Resources/app/src/text-editor-component.js:767:36)
  at HTMLDivElement.boundMethod (/Applications/Atom.app/Contents/Resources/app/node_modules/react-atom-fork/lib/ReactCompositeComponent.js:1295:21)

Commands
     -1:03.2 editor:move-to-end-of-screen-line (atom-text-editor.editor.php.is-focused)
     -1:02.8 emmet:insert-formatted-line-break-only (atom-text-editor.editor.php.is-focused)
     -1:02.8 editor:newline (atom-text-editor.editor.php.is-focused)
     -1:02.3 emmet:insert-formatted-line-break-only (atom-text-editor.editor.php.is-focused)
     -1:02.3 editor:newline (atom-text-editor.editor.php.is-focused)
  3x -0:33.6 core:move-left (atom-text-editor.editor.php.is-focused)
     -0:32.7 core:backspace (atom-text-editor.editor.php.is-focused)
  3x -0:32.1 core:move-right (atom-text-editor.editor.php.is-focused)
     -0:24.8 core:move-left (atom-text-editor.editor.php.is-focused)
     -0:21.5 core:move-right (atom-text-editor.editor.php.is-focused)
     -0:20.6 emmet:insert-formatted-line-break-only (atom-text-editor.editor.php.is-focused)
     -0:20.6 editor:newline (atom-text-editor.editor.php.is-focused)
     -0:16.5 emmet:expand-abbreviation-with-tab (atom-text-editor.editor.php.is-focused)
     -0:16.5 snippets:next-tab-stop (atom-text-editor.editor.php.is-focused)
     -0:09.7 emmet:expand-abbreviation-with-tab (atom-text-editor.editor.php.is-focused)
     -0:09.7 snippets:next-tab-stop (atom-text-editor.editor.php.is-focused)

Config
{
  "core": {
    "disabledPackages": [
      "html-img"
    ],
    "themes": [
      "seti-ui",
      "no-caffeine-syntax"
    ],
    "destroyEmptyPanes": false
  },
  "editor": {
    "fontSize": 12,
    "lineHeight": 1.8,
    "softWrapAtPreferredLineLength": true,
    "invisibles": {}
  }
}

Installed Packages
# User
color-picker, v1.2.5
dash, v1.0.0
editorconfig, v0.2.0
emmet-atom, v2.2.0
language-blade, v0.7.0
laravel-facades, v1.0.0
linter-coffeelint, v0.1.7
linter-jshint, v0.1.0
linter-php, v0.0.11
linter-rubocop, v0.2.1
local-history, v1.0.4
no-caffeine-syntax, v0.6.0
react, v0.7.0
ruby-define-method, v0.1.0
ruby-slim, v0.2.0
seti-ui, v0.3.6
terminal-status, v1.3.5

# Dev
No dev packages

Can you please add "steps to reproduce"?

If happen again post here because I do not remember how it happened.

@nathansobo Gonna pull you into this old issue as well. As far as I can tell, this exception happened here:
@editor.getLastSelection().selectLine(null, autoscroll: false)

which means that @editor.getLastSelection() returned undefined. I think I remember seeing another PR from you where you guarded against the situation where packages would somehow destroy all selections. Could that have happened here as well and would it make sense to guard against that here as well? :thought_balloon:

This shouldn't be happening anymore, because getLastSelection auto-instantiates a new selection in the event one is missing. Have we had reports on recent versions?

Have we had reports on recent versions?

No recent reports in the issue tracker. And I also just checked bugsnag and noticed one exception in the last 2 weeks, but that was thrown from someone still on version 0.184.0. :smile:
I'm going to close this -- thanks for taking a look, @nathansobo :tangerine:


Cmake POSITION_INDEPENDENT_CODE support

Adding support for cmake's POSITION_INDEPENDENT_CODE property for syclcc would be nice.
As of now, with the following setup I get a linker error.
CMakeLists.txt:
project(hipsycl_pic)

set(HIPSYCL_PLATFORM cpu)
find_package(hipsycl CONFIG PATHS /path/to/hipSYCL/install/lib/cmake/)

add_library(hipsycl_pic_lib SHARED add.h add.cpp)
add_sycl_to_target(TARGET hipsycl_pic_lib SOURCES add.cpp)

set_target_properties(hipsycl_pic_lib PROPERTIES
    POSITION_INDEPENDENT_CODE ON
)

include(GenerateExportHeader)
generate_export_header(hipsycl_pic_lib
        BASE_NAME mylib
        )
target_include_directories(hipsycl_pic_lib PUBLIC ${CMAKE_CURRENT_BINARY_DIR})

add.h:
#define ADD_H

#include "mylib_export.h"

#ifdef __cplusplus
extern "C" {
#endif

void MYLIB_EXPORT add(float* a, float* b, float* out, unsigned int n);

#ifdef __cplusplus
};
#endif
#endif // ADD_H

add.cpp:
#include <CL/sycl.hpp>

using namespace cl::sycl;
void add(float* a, float* b, float* out, unsigned int n)
{
    static queue q;
    buffer<float> aBuf(a, n);
    buffer<float> bBuf(b, n);
    buffer<float> outBuf(out, n);
    q.submit([&](handler& h){
        auto aAcc = aBuf.get_access<access::mode::read>(h);
        auto bAcc = bBuf.get_access<access::mode::read>(h);
        auto outAcc = outBuf.get_access<access::mode::write>(h);
        h.parallel_for<class sycl_kernel>(range<1>(n), [=](id<1> id) {
            outAcc[id] = aAcc[id] + bAcc[id];
        });
    });
}

Resulting linker error:
/usr/bin/ld: CMakeFiles/hipsycl_pic_lib.dir/add.cpp.o: relocation R_X86_64_PC32 against symbol '_ZN7hipsycl4sycl5queueD1Ev' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: bad value

As the linker says, the problem is that the -fPIC isn't given to the compiler when compiling for the cpu.
For my use case, i changed syclcc-clang to add the flag unconditionnaly in the pure_cpu_compiler class but it would be better if the syclcc toolchain could understand the POSITION_INDEPENDENT_CODE property and add the flag accordingly.

I don't think this is an issue with syclcc - it just forwards any of its arguments that are not hipSYCL-specific to the underlying compiler, so syclcc -fPIC will work. The issue is probably rather that the hipSYCL cmake integration does not implement the POSITION_INDEPENDENT_CODE feature.

That's what i think too, excuse me if I wasn't clear, when i said toolchain, i meant toolchain as in the cmake sense.
If I had to guess, I'd say the CMakeSYCLInformation.cmake file should be changed

You may be right with your guess. I'm not sure how we would need to implement this in cmake. Would you be interested in investigating and maybe creating a PR?

fixed by #299


BibTeX citations

The citation numbers [#] are currently hard-coded into the Drasil DSL.  Ideally the citations will be auto-generated.  For LaTeX this would mean using the cite command together with BibTeX.  There are other priorities at the moment, but this would be a nice detail to get working.

This should fix #239

I've done some work on this. What is left to do is,

Add other types of sources (articles, websites, database etc.)
Add more fields (ISBN, www link etc.)
Add alternate renderings (APA, MLA etc.)
Integrate with the current rendering of Drasil

But the general framework is done now.

The main problem with TeX is that the title "References" shows up twice. The functions in TeX/Print.hs also need some cleaning up.

Note: look into https://github.com/backtracking/bibtex2html or
nxg.me.uk/dist/bibhtml/ or www.spinellis.gr/sw/textproc/bib2xhtml/

The main implementation of citations is done. #48 covers the in-text citation portion of this issue.


[Question] Another Widget icon similar to registered trademark Cirrus® under Mastercard

Is your request related to a problem? Please describe.
From the source code and Play Store page thumbnail, it looks like the app icon is similar to Cirrus which according to Wikipedia is a subsidiary of Mastercard. And on More About Our Brands page on Mastercard, Cirrus® shows up with a registered trademark symbol. Maybe there is certain risk to use that icon?
Describe the solution you'd like
Change the app icon and notify the change to end users in an appropriate way.
Describe alternatives you've considered
Evaluate the legal risks and if it's fine to use it, just leave it as it was.
Additional context
I'm not a lawyer so maybe I'm just making a fuss and obviously Google already approves the app on Play Store...

@aaronhatesregex thank you for sharing this. I honestly haven't seen that icon before but you're right in saying that is quite similar to the AW icon. Which has been created by me playing around with shapes and colors without a specific design in mind.
Anyway, I think that the AW icon is not an important brand for the application and is not commonly known so there will probably not be any problem.


IMU not responding error code 2

When trying to arm the motor using the RC transmitter I get the following error message: 'Unable to arm due to error code 2', This is the IMU not responding error code, but I can calibrate and receive data through the ROS node just fine. This could be a hardware issue as the naze32 I am using is quite old and I am not the first to use it, but I was wondering if you had any ideas as to what is causing this error? I should also note that I have the parameters setup to work with a fixed wing MAV.

Do you happen to know the revision of your naze?

So I think it was a problem with the way we were clearing that particular error on rev 5+ nazes.
Do you think you could try my potential fix on the fix_194 branch?

Rev 5. And yes I will try the potential fix.

Thanks for the possible fix but unfortunately it did not work. I get the same error when trying to arm.

Okay.  Could you upload a copy of your param yaml file?  I'll see if I can replicate it.

I sent my param.yaml and parameters.yml files to you through email. Sorry I don't know how to do the same through github. Also I think I should note that I am using a virtual box and 14.04 with ros indigo, but I have also tested using on a non virtual box 16.04 running ros kinetic and got the same error.

Cool.  (I think you can just attach it to a post).  I'll give it a try and see if I can figure out what's going on.

Here are the files. I just saw that my email didn't send properly. Sorry about that.
params.zip

Okay, I just tried it on my Rev5 naze in indigo, with the parameter set you sent.
After a clean build and flash of the firmware (make clean, make flash) and then loading the parameters rosservice call /param_load_from_file and calibrating the IMU rosservice call /calibrate_imu through the master version of rosflight_io  I was able to arm and disarm with channel 5.
Is there anything else that you are doing in your setup?

No, that is everything that I am doing for setup. I will try again using kinetic just to make sure, but I am now fairly certain that the naze32 I am using is damaged. I am receiving new naze32's either tomorrow or Monday and I will see if hardware damage is the issue. Thanks for all of your help.

I tried again with two new naze32 rev6s and I got the same error after flashing from the rosflight.hex files using the clean flight configurator, loading the parameters.yml file, and calibrating the IMU.


Add button mania project | A ready to copy paste button projects #3141

Title and Issue number
A ready to copy paste button projects #3141
Close #<issue_no>

Checklist:

[X] I have mentioned the issue number in my Pull Request.
[X] I have commented my code, particularly in hard-to-understand areas
[X] I have created a helpful and easy to understand README.md

Okay, that must be by mistake.


Small fixes

i thought about that.
i would suggest to directly use the name field from the package.json to make nmo reusable.

+1


Arg parsing handles quotes and slashes

Quotes work, slashes and brackets not so much yet

finished with latest PR


file is not generated/saved after stop recording

Version : 2.1.2
Platforms you faced the error: Android
Expected behavior: file is not generated/saved after stop recording and hence not able to upload using multipart request
Actual behavior: File should get generated in the device in the specified path
Steps to reproduce the behavior :

record audio in android
stop recording
check file at path you specified while recording

@maulikdhameliya  How did you solve it? I got the same issue.


YE #10 to send Friday 1/1

Final copy lives here:
https://docs.google.com/document/d/1lPMCaO83_QqL5vJG9w2ClkqC6943OHtiTbRX0dx3jnM/edit?pli=1
No segments needed. One send to full list.
Note! No need to omit "Do Not Email YE 2015" as this is not an ask. Please include all!
Please send tests to Rebecca, Ryan, Tim, and Trilogy for advance review.

Not segmented.
This is now queued.


Migrations generator working with Laravel 7.11

Hi!
Is it planned to have a version of this package working with Laravel 7.11?
Thanks

I am also looking forward for this.This is a very useful package.

This package is abandoned, use this instead: https://github.com/kitloong/laravel-migrations-generator


Messy Chinese Code Rendered in Wechat PC 's browser

Attach (recommended) or Link to PDF file here:
Configuration:

Web browser and its version: CEF(4.0.1326.400)|Chromium(53.0.2785.116)
Operating system and its version:Windows  10
PDF.js version:
Is a browser extension:2.7.570
Steps to reproduce the problem:

Sign In the Wechat App On Winodws 10
load with the PDF file Office Viewer's in Wechat's build-in browser.
The some Chinese text content are missed.

What is the expected behavior? (add screenshot)

What went wrong? (add screenshot)

Link to a viewer (if hosted on a site other than mozilla.github.io/pdf.js or as Firefox/Chrome extension):
https://cdnstyle.woqukaoqin.com/pdfjs/web/viewer.html

Web browser and its version: CEF(4.0.1326.400)|Chromium(53.0.2785.116)
[...]
load with the PDF file Office Viewer's in Wechat's build-in browser.

The supported browsers are already listed in the FAQ, see https://github.com/mozilla/pdf.js/wiki/Frequently-Asked-Questions#faq-support, where you'll note that Wechat is first of all not listed and secondly that the mentioned Chromium version is too old.


Things to fix as noted by @baldurk

include/irr/core/alloc/address_allocator_traits.h(80): supportsArbitraryOrderFrees isn't available in one template instantiation where AddressAlloc=irr::scene::IMeshSceneNodeInstanced::InstanceDataAddressAllocator.

include/irr/core/alloc/address_allocator_traits.h(139): the std::declval<U&>().template multi... syntax really confused the compiler. Removing the template worked but I'm sure that's not the right fix.

include/irr/core/alloc/HeterogenousMemoryAddressAllocatorAdaptor.h(95): HeterogenousMemoryAddressAllocatorAdaptor inheriting AddressAllocator as private broke later in ResizableHeterogenousMemoryAllocator::multi_free_addr that expected to access AddressAllocator::reserved_size which was inaccessible. Changing to public inheritance fixed it.

Notes:

ArbitraryOrderFrees should instantiate nicely due to SFINAE
Cannot remove the template as that template meta-function checks whether a only templated forwarding declaration of that method is available
The inheritance should work, reserved_size is a static function!

I wonder if the last issue would be fixed by prepending typename before the static function call

well, if inheritance is private than you don't have access to base's members. Regardless they're static or not afaik. So that's all. So... friendship or rethink this somehow I guess

But base has a public static function ?

Apparently it tries to access reserved_size through inheritance no matter what... Not sure if it's standard behavior but msvc does the  same. protected inheritance should do then. In this case at least

maybe if we use typename in front to make it access without inheritance?

include/irr/core/alloc/address_allocator_traits.h(139): the std::declval<U&>().template multi... syntax really confused the compiler. Removing the template worked but I'm sure that's not the right fix.

Why actually removeing the template is not the right fix? IMHO it's ok. Also i see that multi_alloc_addr is now always template (IAddressAllocator) so i'm not sure what was intended meaning of this template. Anyway we don't need template keyword for calling a template function .

maybe if we use typename in front to make it access without inheritance?

idk if this changes anything, but why not try..

Can you construct a test for the address_allocator_traits that it correctly reports whether the address_allocator actually has a multi_alloc and a multi_free method (templated or not) ?
The reason I had to put in that template in the first place was because the meta-function for non-template version was not catching the existence of the present forwarding template multi_alloc and multi_free

There's only 9 combinations of the multi_alloc+multi_free methods in an address allocator, its basically power of two of:
A. Not Present
B. Present but not templated
C. Templated forwarding

@Crisspl can you check that https://github.com/buildaworldnet/IrrlichtBAW/commit/e347ea7a25c3ca4b6a05e40383125ecf5c2b3b20 fixes the following issue

include/irr/core/alloc/HeterogenousMemoryAddressAllocatorAdaptor.h(95): HeterogenousMemoryAddressAllocatorAdaptor inheriting AddressAllocator as private broke later in ResizableHeterogenousMemoryAllocator::multi_free_addr that expected to access AddressAllocator::reserved_size which was inaccessible. Changing to public inheritance fixed it.

Regarding the first problem on the list

	typedef irr::core::impl::address_allocator_traits_base<core::ContiguousPoolAddressAllocatorST<uint32_t>,true > trait_base;
	printf("Support %d\n",trait_base::maxMultiOps);

GCC ingests, compiles and runs this without issue in 01.HelloWorld, whats the situation like with MSVC?

Ok I've actually constructed the unit test for the allocator static type traits.

Fixed all of the problems, @Crisspl  can you test whether MSVC likes my code now?

Fixed with merge

I get
irr/core/alloc/address_allocator_traits.h:160:55: warning: inline variables are only available with -std=c++1z or -std=gnu++1z
_IRR_STATIC_INLINE_CONSTEXPR uint32_t     maxMultiOps                 = resolve_maxMultiOps::value;
so we require C++17 now?

This issue is kind of hard to solve, without the inline it compiles but fails to link.
Maybe we should replace the constexpr with std::integral_constant and irr::bool_constant types instead

I tag #179 here so we won't forget about this warning.


Fahrenheit bug?

I greatly appreciate that you added Fahrenheit conversion to the mugctl app.
I noticed today, though, that when I set the desired temp, that it stayed at the low temp for several minutes (more than 10), but as soon as I switched to C, it started climbing. Once it started, I was able to switch back to F, and it kept climbing just fine.

The mug stores the unit internally, so it's possible that I'd need to send the temperature in the correct unit. I assumed it would internally only use one unit in the protocol.

Well, I badmouthed them :-) The error was in my code. Please refresh the app (you might need to kill the "app") to get the fix in a few minutes.

Hey, no worries - nothing worse than unit conversions in code!
J
On Tue, Feb 21, 2023, 3:53 PM Alexandre Macabies @.***>
wrote:

Well, I badmouthed them :-) The error was in my code. Please refresh the
app (you might need to kill the "app") to get the fix in a few minutes.
—
Reply to this email directly, view it on GitHub
https://github.com/zopieux/mugctl/issues/4#issuecomment-1439077461, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAGCPUJZWOE43HQZUP5NBP3WYUTNLANCNFSM6AAAAAAVCAKKSE
.
You are receiving this because you authored the thread.Message ID:
@.***>


should whitespaces be encoded?

given an LDIF dump with an entry containing this attribute:
dircount: some.server.domain.tld 1 76 846
I get:
Error in line 84: illegal base64 data at input byte 15
The python implementation for ldif dumps does not complain about this.
value-spec               = ":" (    FILL 0*1(SAFE-STRING) /
                                ":" FILL (BASE64-STRING) /
                                "<" FILL url)
                           ; See notes 7 and 8, below

SAFE-CHAR                = %x01-09 / %x0B-0C / %x0E-7F
                           ; any value <= 127 decimal except NUL, LF,
                           ; and CR

SAFE-INIT-CHAR           = %x01-09 / %x0B-0C / %x0E-1F /
                           %x21-39 / %x3B / %x3D-7F
                           ; any value <= 127 except NUL, LF, CR,
                           ; SPACE, colon (":", ASCII 58 decimal)
                           ; and less-than ("<" , ASCII 60 decimal)

SAFE-STRING              = [SAFE-INIT-CHAR *SAFE-CHAR]

This include SPACE (32) if I'm right, so is the error right? The specs say that spaces are allowed.

curious enough this happens in a file with 8 entries. In a file with roughly 6371008 entries this error doesn't appear.

It's possible that this is why https://github.com/hspark0582/ldif/commit/96ec9ecd0d1612a496497af7ec908ce609819909 was done in a fork

Strange enough I'm unable to replicate this in a test so far.

I had an error in a function dealing with the empty value bug as a workaround..

we have lines like (attribute names and values changed):
exampleAttr:: (many letters a-zA-Z)=
The double "::" seems to trip up ldif where the python one presumably deals fine with it.


Root claim score should match parent score

Problem:

Reproduction:

start from an empty topic
set the starting node's score to anything
click on the node's score to open the implicit claim
observe that implicit claim's score does not match parent's score that was set in step 2

Technical ideas:

store only one score between these

would a graph structure make more sense than a relational structure for the diagram store?

alternatively, could continue storing these separately and just ensure they're in sync (not ideal but probably easier)

if root claim is being scored: update parent score
always: look for child and update their score

Notes:

treating score of root claim differently from score of other claims sounds like a recipe for jank. but may make sense
this bug may indicate that the current UX is a little awkward (should a child diagram be overlayed instead of distinct?)

Think we should use the easy alternative (keep scores separately stored and in sync) for now. Doesn't seem worth to go for the "proper" solution right now because it seems like significantly more work to figure out.


can open menu with f5

Please do not submit bugs for unsupported EFT or unstable SPT-AKI versions
Double check the main page for the latest EFT and SPT-AKI versions we support.
Describe the bug
there is no bug for what i know i only cant open the menu with f5 is it a another key
i see the esp is on so its working
To Reproduce
dont know
Expected behavior
dont know
Screenshots
dont have
Additional context
dont know

ohw thankyou it works know cant find it how it works on the site


DiffEngine does not correctly handle changes in m:event

Given
  <div th:text="${counterValue}"></div>
  <button m:click="increaseCounterWith(${counterValue})">Diff bug?</button>

And

public List<Attribute> setupAttributes(ServerRequest serverRequest, Session session) {
    List<Person> people = new ArrayList<>();//generateListOfPeople();
    return List.of(new Attribute("counterValue", 0));
}

public List<Attribute> increaseCounterWith(Integer increaseWith) {
    this.counter += increaseWith;
    return List.of(new Attribute("counterValue", counter));
}

We get a warning like

[WARN] i.g.m.core.diffengine.DiffEngine - comparisonToDiff: no match for comparison: Expected attribute value '_M.doAction(null, increaseCounterWith(0))' but was '_M.doAction(null, increaseCounterWith(1))' - comparing <button onclick="_M.doAction(null, increaseCounterWith(0))"...> at /html[1]/body[1]/button[2]/@onclick to <button onclick="_M.doAction(null, increaseCounterWith(1))"...> at<EMAIL_ADDRESS>
Reference: HelloWorldController and hello-world.htm

We had not yet encountered 'attribute value change' diffs, so I implemented them!


When cursor moves horizontally, it shows two different behaviors when passing inlayHints

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.73.1
OS Version: Ventura 13.0.1

the screenshots were taken with code --disabled-extensions

A. Behavior when the cursor moves forward (left to right),

As you can see above, the cursor does not pass inlayHints instead of going to the right in front of the letter A of the second `Array`.
However, when you move the cursor in the opposite direction, from right to left, it shows different behavior.
B. Behavior when the cursor moves backward (right to left),

The cursor stays in front of the letter A on the first move, but on the next move, it passes the opening bracket and it locates before the opening bracket.
Conclusion
When a cursor moves horizontally, the cursor ignores text that is placed right after the inlay hints.

from the screenshots
left to right: letter A is ignored because it is placed right after the inlay hint
right to left: the opening bracket is ignored because it is also placed right after the inlay hint

Suggestions

the inlay hints are literally the 'hints' not 'texts' so the cursor should not be blocked by it as you can observe in case A (the behavior in case B should apply to the A case)

Steps to Reproduce:

turn on inlayHints options by putting these lines in settings.json of your VSCode

{
  // js ts type annotations
  "javascript.inlayHints.parameterNames.enabled": "all",
  "typescript.inlayHints.parameterNames.enabled": "all",
  "javascript.inlayHints.variableTypes.enabled": true,
  "typescript.inlayHints.variableTypes.enabled": true,
  "javascript.inlayHints.propertyDeclarationTypes.enabled": true,
  "typescript.inlayHints.propertyDeclarationTypes.enabled": true,
  "javascript.inlayHints.parameterTypes.enabled": true,
  "typescript.inlayHints.parameterTypes.enabled": true,
  "javascript.inlayHints.functionLikeReturnTypes.enabled": true,
  "typescript.inlayHints.functionLikeReturnTypes.enabled": true,
}

create test.(js | ts) file
write any function that has parameters and return value
you see inlayHints displayed
put your cursor before or after the inlayHints and move your cursor
observe how it behaves differently while moving the cursor left and right horizontally

@hediet I have to agree with @brandonwie that this is confusing and we should at least consider an option for this

@hediet @jrieken thank you so much you guys for the comments
I think the "design" can be categorized in two different ways, if I may, either it is conceptual or functional.
In a conceptual way, the cursor behaves the same way with the inlayHints as "When a cursor moves horizontally, the cursor ignores text that is placed right after the inlay hints."
It totally makes sense that a function(in this case, cursor and inlay hint) returns the same output(behavior) when the inputs(a cursor passing an inlay hint) are the same. (but maybe if the function's returning concept has one more condition, "the inlay hint should not be treated as text", then maybe we can see it from a different angle)
However, in a functional manner, it is very confusing as jrieken mentioned. One of the reasons is that when the cursor passes the inlay hint from left to right, it gives me the impression that the inlay hint is treated as text because the cursor stops in front of it.  I truly love and use this brilliant feature every single day, and the behavior was one of the things I need to endure to use the feature. However, after months, I have come to a point where I want to raise my hand and ask you guys if there is any chance that the behavior can be changed in a more practical manner.
I'm more than happy to know the fact that it was by design. Either way, I'll keep using it. 😁
Thanks a lot.

@brandonwie  I fully support your viewpoint, it is well-reasoned and convincing.

Suggestions
the inlay hints are literally the 'hints' not 'texts' so the cursor should not be blocked by it as you can observe in case A (the behavior in case B should apply to the A case)

Your suggestions will fix this:

Set the cursor shape to block(the same as the normal mode in Vim), when the cursor moves forward (left to right), it can stop in inlay hint.

Although the current design should be well thought out, it wouldn't hurt to give users an additional option.
In any case, I am grateful to the developers of VSCode for their contributions, giving developers a free and powerful development tool.

Hi @jrieken @hediet
Could this be related to this issue?
https://github.com/microsoft/vscode/pull/226515#issuecomment-2466212707
The PR from @NriotHrreion is already there to be reviewed since several months related to the confusing and unacceptable behaviour of the block cursor with active inlay hints. Maybe it will also fix this issue here, which is also 2 years old.
@NriotHrreion provided a fix for that. Would appreciate to be merged soon or at least a statement when we can expect this to be fixed.
Thanks a lot and best regards.
Andreas


Screen name in react-native

In react-native-clarity, the screen name is always logged as MainActivity. Is any way to change this behavior?

We are working on supporting sub screens and fragments with our next Clarity release. Stay tuned!

Excited to see this feature!

Looking forward to this feature too!

Looking forward on this features as well!

Awesome initiative to improve UX in RN apps 🤩

Hello - We have this feature in testing now - we would like to solicit some customer feedback before rolling it out to PROD - if you're interested to try it - please send me an email on<EMAIL_ADDRESS>

This has been addressed in 1.0.1 please upgrade and let us know your experience.


Design servo motor controller power management circuit

Design a circuit that will allow the ESP32 MCU to control the power up sequence of the servo motor controller. The steps in the power-up sequence will (roughly) 1. ESP32 does boot up process, 2. Provide 3.3VDC to the PCA9685 processor on the controller board, and 3. Provide power to the 5DVC to the servo motors. The method of providing power to the servo motors must be able to handle 10AMP peak power and normal amps of around 3 AMPs.

Power-control.odg
Attached a diagram I did a while ago to illustrate one approach to power management. It's also in the
hexBot/docs/circuitry folder.

need to include pull-up an pull-down resistors to ensure that any signal that's floating because it hasn't been set up yet is pulled in the right direction.

Please add control for 3.3VDC from the ESP32 to the PCA9685 servo controller so that we can control the order that the servo controller CPU starts up and the motor power engages.

I have somewhere between 3 and 6 LH1085 chips, which are 6 pin DIP solid state relays  that can control 3.3 VDC to PCA9685's nicely. have updated the diagram in the docs/circuitry/Power-control.odg file.

For 5VDC this may be an option: I have been thinking about the power control for our servo motor controllers I think we can very easily control the 3.3 and 5.0 VDC voltages for the PCA96856 servo drivers using a couple of Logic Level Enhancement-Type N-Channel MOSFET transistors.
What I think that we need

A MOSFET with a Vgs of 3 VDC (or less) so that the ESP32 can turn it on and off.
We are only using this as an on/off switch, not PWM, so the rise and fall time characteristics are not that important to us.
We want a transistor that is comfortable working at a constant current of say 3 AMPS
We think that peak current could be 18 AMPs

Type of MOSFET
Check out this article: https://circuitjournal.com/which-mosfet-should-you-use-with-arduino
We can pull the pin low to a comma ground to ensure no floating problems and that the gate is closed at boot up.
Which MOSFET
According to this article: https://www.instructables.com/ESP32-and-DC-Motors-Tutorial-Part-1/, theRFP30N06LE MOSFET (spec sheet: https://www.sparkfun.com/datasheets/Components/General/RFP30N06LE.pdf) can be driven by an ESP32.
Where to buy
A pack of 5 of these can be purchased on Amazon Canada for $11.00 (https://www.amazon.ca/Gikfun-RFP30N06LE-N-Channel-Mosfet-Arduino/dp/B01GNORMWA/ref=sr_1_1_sspa?crid=L6WB2ZMBG4G2&keywords=RFP30N06LE&qid=1649024246&sprefix=rfp30n06le%2Caps%2C175&sr=8-1-spons&psc=1&spLa=ZW5jcnlwdGVkUXVhbGlmaWVyPUEyVERDWkY4MEVIRkJQJmVuY3J5cHRlZElkPUEwNTUxNDkzMzVEUlFWSUdIWlowTyZlbmNyeXB0ZWRBZElkPUEwNDQ5MzE1M1VFRjFWSDBXMUNVNCZ3aWRnZXROYW1lPXNwX2F0ZiZhY3Rpb249Y2xpY2tSZWRpcmVjdCZkb05vdExvZ0NsaWNrPXRydWU=)
If you are up for it check my thinking and let me know if you feel that these are worth purchasing.

I ordered the MOSFETs as well as some extra PCA96856 boards so that we can prototype this circuit.

Another requirement here is to isolate back EMF from the motors so it doe snot interfere with the ICs.

Note that Doug's diagram in the docs/circuitry needs to be updated further but it is the ongoing requirement ref doc and design for this ticket.

Created an initial rough draft of GPIO pin assignments for the functions we can foresee at this point. The actual GPIO choices are likely to change in the board layout process to simplify connections, but this does show that we have enough GPIO pins available, considering their various restrictions, to achieve the current plan, we a few leftover pins.
Notes:
-this assignment considers restrictions on some digit pins that can only be input

whether the pin coms up with weak pull-up, weak pull-down, or neither was NOT considered
we avoided using A/D controller 2 because it conflicts with WiFi in some way

Assignment file location is  ..docs/circuitry/GPIO-pins.ods

reference for microprocessor interfacing: https://w9xt.com/page_microdesign_toc.html

updated docs/circuitry/Power-control-2.odg, and GPIO-pins.ods to reflect:
-monitoring 5V voltage at only one point, rather than for each PWM controller
-having both a digital enable signal, and an analog sense signal for the common 5V voltage monitor
-moved 5V current sensors to show how they need to be in series with measured circuit
-used different lines for digital and analog GPIO connections
-added a table listing possible chips for various functions
-added 5V and 3.3V LEDs
-rearranged GPIO pin usage a bit, but ended up using the exact same number of pins in total

current power design is reflected in these block diagrams in ..docs/circuitry/ :
Power-control-VN7050ASTR.odg (reflects use of 7050 to control 25V voltage measurement circuit)
power-test-config.odg (includes voltage divider resistor values for measurement circuits)
voltage-dividers.odg (includes the math used to derive resistor values)

Updated power-test-config.odg to reflect GPIO control better.


New version: Seewo.EasiAction version <IP_ADDRESS>2

This pull request is automatically generated by 🥟 Dumplings in #3250
Microsoft Reviewers: Open in CodeFlow

/AzurePipelines run


Tag for 0.3.0 release

Could you tag it? Otherwise bower (and other downstream package managers like rails-assets) can't find it.
:heart:

I forked and created a tag on this. In bower its call ng-password-meter-2017 the inject only inserts the js file but that all i needed.


Temporarily mimic shift/unshift methods to workaround Safari/Webkit bug

As we know from https://bugs.webkit.org/show_bug.cgi?id=170264
After performing a shift operation on an array with large numbers, appending new values via bracket notation fails.
It seems to be in limbo when and if this is going to be resolved soon by Apple.
As we know this greatly affects bignumber.js in current iOS and Safari browsers.
Most notably affected is the infinite loop in the division function, https://github.com/MikeMcl/bignumber.js/issues/120.
Reading your comment https://github.com/MikeMcl/bignumber.js/issues/120#issuecomment-295379090
I see you were concerned about hidden number accuracy problems due to shift and bracket notation being used elsewhere.
Proposed Solution
As a temporary workaround to help libraries downstream, could we mimic the shift operation with splice everywhere in this library?
This would ensure we don't encounter any unexpected results due to the webkit bug.
Splice seems to behave normally in buggy webkit and produces the same result as a shift.
var arr = [0,<PHONE_NUMBER>];
arr.splice(0, 1);
arr[1] = 1;

// This will evaluate true in Safari and is expected
expect(arr).toEqual([2147483648, 1])

The test suites seem to pass ok locally 👍
Let's see what happens on CI 😄
Update
While the changes fixed the infinite loop, I noticed the browser test files when run locally on Safari failed.
This indicated other areas of this library had been affected and compromised by the WebKit bug.
I isolated this to the unshift() method. Substituting this for a slower alternative of Array.prototype.concat resulted in all 80335 tests passing.

IN TOTAL: 80335 of 80335 tests passed in 3.096 secs.

Looks good.
Thanks for your work on this.
I'll publish a new version presently.


ci: Cleanup Service Integration Tests

ci: Cleanup Service Integration Tests

ping @Xuanwo to add integration tests in teamcity.

Done: https://teamcity.beyondstorage.io/project/Services_Oss?mode=trends


Source for this dataset

What source should be cited for this dataset @LinguList?
Just the 'general' database?
@misc{Starostin2011,
    editor = {Starostin, George S. and Krylov, Phil},
    title = {The Global Lexicostatistical Database},
    url = {http://starling.rinet.ru/new100/main.htm},
    year = {2011}
}

No misc, this is an incollection, of course (
@incollection{Starostin2011,
author = {Starostin, George S.},
title = { Annotated Swadesh wordlists for the Hmong group
(Hmong-Mien family).
},
editor = {Starostin, George S. and Krylov, Phil},
booktitle = {The Global Lexicostatistical Database},
url =
{https://starling.rinet.ru/cgi-bin/bdescr.cgi?root=new100&morpho=0&basename=new100\hmo\hmo},
year = {2011}, address = {Moscow}, publisher = {RGGU},
}

I was just pasting what currently is in sources.bib. Thanks for the update & citation.

Please check here: https://starling.rinet.ru/new100/about.htm
George added citation information after I asked him, so let's follow
these guidelines.

Ah, perfect, thanks for the link!


Document usage of withDevtools(): No store found.

Please add more documentation on how to use withDevtools(). Just throwing in withDevtools('flights') then using the latest Chrome with the latest Redux DevTools
https://chromewebstore.google.com/detail/redux-devtools/lmhkpmbekcpmknklioeibfkpmmfibljd?hl=de
... simply results in the store window saying "No store found". Please document the required steps to make this work.

There you go #93. Does that help?

Docs have been improved


Add Meria Validators

Add Meria Validators for the Akash, Axelar, Cosmos, Fetch, Iris, Juno, Kava, Evmos, Near, Osmosis, Persistence, Sommelier blockchains

Change description for
"Meria is an institutional-grade staking service provider running blockchain infrastructure on more than +35 networks."


Typo in JDBC and ODBC

[Enter feedback here]
In chapter Authentication Options, a typo exists in JDBC and ODBC:
"There are two non-interactive authentication models for Azure AD, which can be used in many different applications (ADO.NET, JDCB, ODC, and so on)."

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 529333ec-160b-9138-1d48-19f539fdc460
Version Independent ID: 570bf80c-dd5e-e22c-45a5-f7e949782b38
Content: Using multi-factor Azure Active Directory authentication - Azure SQL Database & SQL Managed Instance & Azure Synapse Analytics
Content Source: azure-sql/database/authentication-mfa-ssms-overview.md
Service: sql-db-mi
Sub-service: security
GitHub Login: @GithubMirek
Microsoft Alias: mireks

@TomVHatAC
Thanks for your feedback! We will investigate and update as appropriate.

Hi @TomVHatAC ,
Changes have been moved to the page. Thanks for your feedback.
#please-close

I think you missed the JDBC. It still reads JDCB.

Hi @TomVHatAC ,
Changes have been made to the document.
Thank you.
#please-close


Canary Deployment - improvement in "CNCF glossary" definition

I think current definition of "Canary Deployment" in CNCF glossary is not totally right due to the current starting sentence:
Canary deployments is a deployment strategy that starts with two environments: one with live traffic and the other containing the updated code without live traffic
That sentence could be understood as starting with two complete environments for the two versions (the current/stable one and the canary one) but it is not like that (this would be too costly from a footprint point of view). In a Canary process you have a whole/complete environment for the current/stable version and a minimum starting one for the canary version and, as more real traffic is moved to the canary version, more workload instances of the canary version are needed and less workload instances of the current/stable version are run ... and so, from a footprint point of view, it is always required the same amount of cloud resources.
(this is actually as CNCF Argo-rollouts and CNCF flagger projects implement a canary upgrade)
What then about replacing that first sentence as follows:
Canary deployments is a deployment strategy that starts with two environments: one with live traffic and the other containing the updated code without receiving (yet) traffic and for which a minimum amount of starting cloud resources is required
At the end of the first paragraph it could also be added this sentence:
During a canary upgrade process the amount of required cloud resources (compute, memory and storage) from the stable plus canary environments is kept (almost) the same as it was before starting it

I would like to work on this issue

Hi @antaloala Thanks for your interest in the CNCF Glossary Project!
Your proposal is being considered by admins and glossary approvers :)
Please wait for triage.
Hello @starlightknown :)
I assume the author of this issue (@antaloala) is willing to work on this issue.
If not, you can be assigned. Anyway we need to triage this issue. :)

Looks good!

Thanks @JasonMorgan and @seokho-son for putting hands on this (and sorry a lot for being silent).

Agreed. I think the "what it is" section is pretty good, actually. I'd leave it as is too.

IMO (influenced by flagger and argo-rollouts implementations) there are three relevant things you must 'have' for an in-service software upgrade procedure to be considered a Canary one:

Usted traffic during the upgrade procedure (routed to current/stable workloads and to new/canary workloads) is production traffic

Total amount of (cloud) resources is kept (more or less) constant

There are one or several 'validation steps' where decided if canary upgrade process continues (finally promoting the canary version to become the stable one) or if it is aborted (as new canary version does not fulfill the expectations).

In current definition the second point is missing.

IMO (influenced by flagger and argo-rollouts implementations) there are three relevant things you must 'have' for an in-service software upgrade procedure to be considered a Canary one:

Handle taffic during the upgrade procedure to validate the canary/new sw instances (for which a well-known amount of that traffic is being routed to new/canary instances and the rest to old/stable workloads instances, changing the percentages as the canary upgrade progress) is production traffic
Total amount of (cloud) resources (required for new/canary workload instances + old/stable ones) is kept (more or less) constant across the whole canary upgrade execution.
There are several 'validation steps' where decided if canary upgrade process should continue (finally promoting the canary version to become the stable one) or the whole canary upgrade is to aborted (as the new/canary version does not fulfill the expectations).

In current definition the second point is missing.

I feel like I said something like this before. While your comments might be true, the CNCF Glossary focuses on making it easy especially for non-technical folks to understand complex cloud native topics. IMO the amount of technical detail you suggest is not necessarily required to understand what a canary deployment is.

@antaloala, please refer to the "minimal viable definition" section in our style guide. As Noah stated, your points are valid but do introduce unnecessary complexity for our purpose. So, while correct, I'll close this PR to keep our simplicity focus.
I hope it makes more sense now that you got the chance to review the style guide. We truly appreciate your contribution and hope you can contribute to another term now that we have clarified the Glossary's goals.

Thanks for your time on this. Yes, according to the style guide to follow (sorry, I did not know about it), I agree that adding all these details would not work ... but, at the same time, this missing information precludes to use/refer to the CNCF glossary definitions to clarify if this or that upgrade procedure can be entitled or not as a Canary upgrade.
Would it be possible to add, in a coming future, some kind of 'extended definition' link to each term so, only when clicked,  extend the definition text (adding these additional but relevant details, only for those terms that could require it)?


Bulk Metadata Update - ms.topic update.

Global effort to improve metadata quality across the Learn platform
These changes make reports cleaner, easier to use, more consistent, and more reflective of our current business. After you accept these changes and they're merged, they will be reflected in standard dashboards and reports maintained by C+E Skilling Business & Customer Success. You'll need to use new filter values in these reports, and you may need to update any custom dashboards or Kusto queries. If you have any questions, please contact Learn Platform Metadata (learn-metadata@microsoft.com).

Learn Build status updates of commit f9fd63c:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-community-training/analytics/custom-reports/power-bi-integration.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

@nikotha
This PR replaces 1 instance in 1 file. No other content was edited or added. If you have any questions, please contact Learn Platform Metadata (learn-metadata@microsoft.com).


ImportError: /usr/local/cuda-9.0/lib64/libcusolver.so.9.0: undefined symbol: GOMP_critical_end

ImportError: /usr/local/cuda-9.0/lib64/libcusolver.so.9.0: undefined symbol: GOMP_critical_end
How do I solve this issue?

@ProGamerGov  hello  ,2 years later , have you solved it?

Congratulations! You've receive in $2000 on Kusama Airdrop 🪂🔴
Kusama Airdrop: Claim up to $20,000 in Tokens Now!
→ Earn rewards on connect you wallet
→ Claim Your $KSM Today
Connect your wallet, follow the instructions, and claim this exclusive airdrop from Kusama. For GitHub users only—share with friends to make it eligible. Redeem your reward first.

🚀 Claim Your Bonus Now! Check Eligibility
Access the Kusama platform and connect your wallet securely.

Congratulations! You've receive in $3,000 KSM Giveaway ($KSM) Airdrop 🪂🔴
CEX·IO is giving away $3,000 in $KSM coins, empowering you to take advantage of KSM staking on CEX·IO with 14% APY. Join the giveaway and earn a chance to win up to $500. Stake Kusama with CEX·IO, get high rewards and win prizes!
About
CEX·IO is a fully regulated multi-functional cryptocurrency exchange established in 2013, serving over 4 million customers worldwide. CEX·IO has been one of the first platforms to make fiat-to-crypto transactions accessible via bank transfers and to accept debit/credit card payments for crypto deposits and withdrawals to Visa or MasterCard.
→ How to join the $3,000 KSM Giveaway Airdrop?
Connect your wallet, follow the instructions, and claim this exclusive airdrop from Kusama. For GitHub users only—share with friends to make it eligible. Redeem your reward first.

Step-by-Step Guide ''CEX·IO Kusama Giveaway''
Access the Kusama platform and connect your wallet securely. Ensure you're using a trusted wallet for the transaction.

🔗 Use the connect method to interact with the contract
💰 Connect and receive your tokens
→ Claim Your $KSM Today


Plugin does crash my homebridge

At first! AWESOME PLUGIN! Exactly what I am looking for! Unfortunately the plugin doesn't work for me...
Node v8.11.1
Any idea what is going wrong?
pi@hassbian:~ $ homebridge
[15/09/2019, 21:16:07] Loaded config.json with 1 accessories and 1 platforms.
[15/09/2019, 21:16:07] ---
[15/09/2019, 21:16:08] Loaded plugin: homebridge-gpio-onoff
[15/09/2019, 21:16:08] Registering accessory 'homebridge-gpio-onoff.GPIO-OnOff'
[15/09/2019, 21:16:08] ---
[15/09/2019, 21:16:08] Loaded plugin: homebridge-hc-sr501
[15/09/2019, 21:16:08] Registering accessory 'homebridge-hc-sr501.HC-SR501'
[15/09/2019, 21:16:08] ---
[15/09/2019, 21:16:08] ====================
[15/09/2019, 21:16:08] ERROR LOADING PLUGIN homebridge-gpio-device:
[15/09/2019, 21:16:08] Error: Could not locate the bindings file. Tried:
 → /usr/lib/node_modules/homebridge-gpio-device/node_modules/node-wiring-pi/build/nodeWiringPi.node
 → /usr/lib/node_modules/homebridge-gpio-device/node_modules/node-wiring-pi/build/Debug/nodeWiringPi.node
 → /usr/lib/node_modules/homebridge-gpio-device/node_modules/node-wiring-pi/build/Release/nodeWiringPi.node
 → /usr/lib/node_modules/homebridge-gpio-device/node_modules/node-wiring-pi/out/Debug/nodeWiringPi.node
 → /usr/lib/node_modules/homebridge-gpio-device/node_modules/node-wiring-pi/Debug/nodeWiringPi.node
 → /usr/lib/node_modules/homebridge-gpio-device/node_modules/node-wiring-pi/out/Release/nodeWiringPi.node
 → /usr/lib/node_modules/homebridge-gpio-device/node_modules/node-wiring-pi/Release/nodeWiringPi.node
 → /usr/lib/node_modules/homebridge-gpio-device/node_modules/node-wiring-pi/build/default/nodeWiringPi.node
 → /usr/lib/node_modules/homebridge-gpio-device/node_modules/node-wiring-pi/compiled/8.11.1/linux/arm/nodeWiringPi.node
    at bindings (/usr/lib/node_modules/homebridge-gpio-device/node_modules/bindings/bindings.js:88:9)
    at Object.<anonymous> (/usr/lib/node_modules/homebridge-gpio-device/node_modules/node-wiring-pi/index.js:1:99)
    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 Module.require (module.js:596:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/usr/lib/node_modules/homebridge-gpio-device/index.js:3:11)
[15/09/2019, 21:16:08] ====================
[15/09/2019, 21:16:08] Loaded plugin: homebridge-gpio-wpi2
[15/09/2019, 21:16:08] Registering platform 'homebridge-gpio-wpi2.WiringPiPlatform'
[15/09/2019, 21:16:08] ---
[15/09/2019, 21:16:08] Loading 1 platforms...
[15/09/2019, 21:16:08] [Pi GPIO (WiringPi)] Initializing WiringPiPlatform platform...
[15/09/2019, 21:16:08] [Pi GPIO (WiringPi)] WORK IN PROGRESS... Report issues on https://github.com/rsg98/homebridge-gpio-wpi2
[15/09/2019, 21:16:08] [Pi GPIO (WiringPi)] Exporting GPIO Pins from config file...
[15/09/2019, 21:16:08] [Pi GPIO (WiringPi)] Exporting and configuring: HouseDoor
[15/09/2019, 21:16:08] [Pi GPIO (WiringPi)] homebridge API version: 2.4
[15/09/2019, 21:16:08] Loading 1 accessories...
[15/09/2019, 21:16:08] Error: The requested accessory 'GPIODevice' was not registered by any plugin.
    at API.accessory (/usr/local/lib/node_modules/homebridge/lib/api.js:64:13)
    at Server._loadAccessories (/usr/local/lib/node_modules/homebridge/lib/server.js:297:42)
    at Server.run (/usr/local/lib/node_modules/homebridge/lib/server.js:91:38)
    at module.exports (/usr/local/lib/node_modules/homebridge/lib/cli.js:59:10)
    at Object.<anonymous> (/usr/local/lib/node_modules/homebridge/bin/homebridge:17:22)
    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)
[15/09/2019, 21:16:08] Got SIGTERM, shutting down Homebridge...

Post your config and what is you gpio -v?

wasn't the one who opened the issue but it is exactly the same as what I'm getting:
pi@raspberrypi:~ $ gpio -v
gpio version: 2.46
Copyright (c) 2012-2018 Gordon Henderson
This is free software with ABSOLUTELY NO WARRANTY.
For details type: gpio -warranty
Raspberry Pi Details:
Type: Pi 3+, Revision: 03, Memory: 1024MB, Maker: Sony

Device tree is enabled.
*--> Raspberry Pi 3 Model B Plus Rev 1.3
This Raspberry Pi supports user-level GPIO access.

I got the same issue.
Try to reinstall:
sudo npm uninstall -g homebridge-gpio-device
sudo npm install -g homebridge-gpio-device --unsafe-perm

This comes up at the end of the install:
make: *** [nodeWiringPi.target.mk:126: Release/obj.target/nodeWiringPi/src/wiringPi.o] Error 1
make: Leaving directory '/usr/lib/node_modules/homebridge-gpio-device/node_modules/node-wiring-pi/build'
gyp ERR! build error
gyp ERR! stack Error: make failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack     at ChildProcess.emit (events.js:311:20)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12)
gyp ERR! System Linux 4.19.97-v7+
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "configure" "build"
gyp ERR! cwd /usr/lib/node_modules/homebridge-gpio-device/node_modules/node-wiring-pi
gyp ERR! node -v v12.16.1
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok

<EMAIL_ADDRESS>added 4 packages from 13 contributors in 50.628s

@bobisaperson1, I have the same issue on my RPi 4.

what method of installing homebridge did you use?

I followed this instruction when I installed Homebridge:
https://github.com/homebridge/homebridge/wiki/Install-Homebridge-on-Raspbian
And I am running it on Raspbian newly installed, so Feb2020 version.


New release

Hello there !
Is it possible to have a new release ? the latest released version does not include the journald input module (Added here : #302 )and journalbeat is today deprecated. (https://www.elastic.co/guide/en/beats/journalbeat/current/journalbeat-overview.html)
Regards,

I just tagged and pushed v4.12.0 to the Puppet forge a few minutes ago. Hopefully this takes care of issues for a lot of folks.


Count expect_any_instance_of towards expectations count

Inspired by recent @pocke contributions, I've checked where Language::Expectations could be useful.

Awesome! Thanks for helping keep things DRY :smile:


mod pom

What changes were proposed in this pull request?
(Please fill in changes proposed in this fix)
How was this patch tested?
(Please explain how this patch was tested. E.g. unit tests, integration tests, manual tests)
(If this patch involves UI changes, please attach a screenshot; otherwise, remove this)
Please review http://spark.apache.org/contributing.html before opening a pull request.

Can one of the admins verify this patch?

@codeboxldd close this

It looks mistakenly open. Could you close this please?


python3Packages.pyflunearyou: 2.0.2 -> 2021.10.0

Motivation for this change
Update to latest upstream release 2021.10.0
Change log: https://github.com/bachya/pyflunearyou/releases/tag/2021.10.0
Things done

Built on platform(s)

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

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

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

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

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

[x] Fits CONTRIBUTING.md.

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

1 package failed to build:

home-assistant

2 packages built:

python38Packages.pyflunearyou
python39Packages.pyflunearyou

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

3 packages built:

home-assistant
python38Packages.pyflunearyou
python39Packages.pyflunearyou


Build(deps): Bump copy-to-clipboard from 3.3.1 to 3.3.2 (#3826)

Pull request opened by the merge tool on behalf of #3826

Merged in 7dc82836680267790d5a7518d1f09f6827638845


Code Quality: Create alike RichCommands inheritance

Description
Some of the existing Rich Commands have an implementation similar enough they could be deriving from a common base class. Such work as already be done for the Rotation or commands
Concerned code
The following Rich commands should be fused:

[ ] Run as commands
[ ] Compress into archive commands
[ ] Decompress archive commands
[ ] Restore recycle bin commands
[ ] Tab closing commands

Gains

Reduced duplication
Centralized logic

Requirements

Akin rich commands are inheriting from the same base class

Comments
No response

Thank you for the feedback


--lts flag won't install on ubuntu (Windows Linux Subsystem) might be just ubuntu too

The option to download nvm install --lts gets a bunch of downloads done and saves it in cache, however, it just spits out the lts version failed to download. In my case it said
nvm: install v12.16.1 failed!
A quick workaround is to just manually install the version you want.
In my case, I had tried to run the installation with the --lts flag then I just explicitly installed v 12.16.1
Might be worthwhile to look into because this might be an issue with all Ubuntu users.
Also, I downloaded nvm with curl. I'm not sure if that might help.

Can you fill out the full issue template? It's there for a reason.
Specifically, nvm install --lts should only download and install a single version, the latest LTS (in this case 12.16.1). What do you mean by "gets a bunch of downloads done"?

It installs something and saves it in cache. However, it doesn't give system wide access to the lts node version installed.
I'll create a new issue.

It'd be great to reuse this issue, just update it to include the issue template contents :-)

When you say "systemwide access", do you mean outside of WSL? I'd only expect WSL to be able to access things, since it requires a POSIX shell and the PATH env var.
Does nvm install node work, or do you see the same as nvm install --lts? iow, is it related to LTS, or not?

So, It's been a few days since I ran into this error.
Basically what happens is if on a newly configured ubuntu machine (not dual booted), on a windows machine via windows subsystem linux (WSL), when installing the latest stable version of node through Node Version Manager (NVM), the command runs as it should and a bunch of stuff prints out to the console (this is what I meant by a bunch of stuff downloads). However, at the very end of the process, the command outputs the error message:  nvm: install v12.16.1 failed!
I then tried to run node --version and node was unavailable as I had not installed node from any other source or at all.
I then tried to install another previous version of node aka v10.16.0 manually and it worked. I was able to immediately use it.
I then tried to install the lts version's actual version number manually and it had worked.
The issue is with how NVM executes the install command based on the --lts flag
That is my assumption.
Sorry if I'm not being detailed enough. I don't have access to a windows machine other than my work one and I can't wipe it to test this out again.
If you have a new windows machine without node installed yet, I'd look into it or at the very least perhaps the source code for how the install command deals with the --lts flag.
-- Alex

Thanks, that does clarify it a bit - perhaps WSL has some bugs around argument parsing?
I don't have a windows machine to test on, so I'll leave this open until someone can help.

Log from my Windows Subshell Ubuntu 18.04 that also failed with the same issue:
tom@thomasfl-MOBL:/mnt/c/Users/thomasfl$ nvm install --lts
Installing latest LTS version.
Downloading and installing node v12.16.1...
Downloading https://nodejs.org/dist/v12.16.1/node-v12.16.1-linux-x64.tar.xz...
################################################################################################################################### 100.0%
Computing checksum with sha256sum
Checksums matched!
mv: cannot move '/home/tom/.nvm/.cache/bin/node-v12.16.1-linux-x64/files/include' to '/home/tom/.nvm/versions/node/v12.16.1/include': Permission denied
Binary download failed, trying source.
Detected that you have 8 CPU core(s)
Running with 7 threads to speed up the build
Downloading https://nodejs.org/dist/v12.16.1/node-v12.16.1.tar.xz...
################################################################################################################################### 100.0%
Computing checksum with sha256sum
Checksums matched!
$>./configure --prefix=/home/tom/.nvm/versions/node/v12.16.1 <
./configure: 4: exec: python: not found
nvm: install v12.16.1 failed!

Files seemed to have been created in /home/tom/.nvm/versions/node/v12.16.1 though, and immediately running the command a second time with no other changes worked:
tom@thomasfl-MOBL:/mnt/c/Users/thomasfl$ nvm install --lts
Installing latest LTS version.
v12.16.1 is already installed.
Now using node v12.16.1 (npm v6.13.4)
Creating default alias: default -> lts/* (-> v12.16.1)
tom@thomasfl-MOBL:/mnt/c/Users/thomasfl/workspace/bfn-mon/ui$ node --version
v12.16.1

Perhaps a filesystem race condition?

Same here, windows 10 with Ubuntu WSL.
Issuing the command multiple times doesn't resolve this, it just uses the cache and fails at moving files.
Here's the output of a retry:
SanzoLaptop% nvm install --lts
Installing latest LTS version.
Downloading and installing node v12.16.1...
Local cache found: ${NVM_DIR}/.cache/bin/node-v12.16.1-linux-x64/node-v12.16.1-linux-x64.tar.xz
Checksums match! Using existing downloaded archive ${NVM_DIR}/.cache/bin/node-v12.16.1-linux-x64/node-v12.16.1-linux-x64.tar.xz
1.36s user 4.27s system 103% cpu 5.410s total
mv: cannot move '/home/sanzo/.nvm/.cache/bin/node-v12.16.1-linux-x64/files/bin' to '/home/sanzo/.nvm/versions/node/v12.16.1/bin': Permission denied
mv: cannot move '/home/sanzo/.nvm/.cache/bin/node-v12.16.1-linux-x64/files/include' to '/home/sanzo/.nvm/versions/node/v12.16.1/include': Permission denied
mv: cannot move '/home/sanzo/.nvm/.cache/bin/node-v12.16.1-linux-x64/files/lib' to '/home/sanzo/.nvm/versions/node/v12.16.1/lib': Permission denied
mv: cannot move '/home/sanzo/.nvm/.cache/bin/node-v12.16.1-linux-x64/files/share' to '/home/sanzo/.nvm/versions/node/v12.16.1/share': Permission denied
1.39s user 4.58s system 88% cpu 6.742s total
Binary download failed, trying source.
0.05s user 5.50s system 77% cpu 7.127s total
Local cache found: ${NVM_DIR}/.cache/src/node-v12.16.1/node-v12.16.1.tar.xz
Checksums match! Using existing downloaded archive ${NVM_DIR}/.cache/src/node-v12.16.1/node-v12.16.1.tar.xz
3.36s user 16.78s system 92% cpu 21.815s total
$>./configure --prefix=/home/sanzo/.nvm/versions/node/v12.16.1 <
Traceback (most recent call last):
  File "./configure", line 15, in <module>
    from distutils.spawn import find_executable as which
ModuleNotFoundError: No module named 'distutils.spawn'
3.47s user 16.98s system 92% cpu 22.138s total
nvm: install v12.16.1 failed!

Installing the exact version with nvm install 12.16.1 works fine.

There shouldn’t be permissions errors; your user should fully own everything in $NVM_DIR.

My bad, it turns out to be a known problem with VSCode.

Do not use vscode 's wsl mode


Added Service Bus to overview

@EldertGrootenboer : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Sort Rooms list alphabetically

Short description of what this resolves:
Rooms List will be displayed alphabetically for all the future sites which will be created using open event webapp generator.
Changes proposed in this pull request:
Perform alphabetic sorting before returning Rooms list generated in fold_v1.js and fold_v2.js, which is used to create the rooms list HTML element
Screenshots
Incorect:

Correct:

Here is the demolink
https://rohan598.github.io/FOSSASIASummit2017-1783/
Important
We need to change the  /event/schedule.html directly for https://2018.fossasia.org in its repository https://github.com/fossasia/2018.fossasia.org, as the site has already been created.

Fixes #1783

@rohan598 Great work! Thanks for the PR.


fix(sozo): ensure bindgen works for typescript

Blindly stolen from this previous PR for Unity.
Tested on some local contracts and worked.

Seems like this was already handles in #1608


OTP 24 compatibility: extract line number from location tuple

OTP 24 includes changes in the Erlang compiler to include column number information. Column information obtained from the chunk data is not currently handled by WorkspaceSymbols.build_result/4 and provokes an ArithmeticError exception as decribed in #503:
https://github.com/elixir-lsp/elixir-ls/blob/b9f55cc5997a590aa97357f14bfc347871b0a1bf/apps/language_server/lib/language_server/providers/workspace_symbols.ex#L480-L490
This PR changes build_result/4 to extract the line number when a tuple {line, column} is read from the chunk data.

Similar changes are needed in elixir_sense


GCC 8+ does not compile successfully.  (-Werror=class-memaccess)

Looks like GCC 8 has some restrictions in the use of memset function. Latest GCC 7 (and Clang) compile just fine. Bellow I paste the error message. By the way my Anvil fork has been modified but only on the window-I/O part of it (so has nothing to do).
/home/snoopy/Desktop/inMyRoom_vulkan/Anvil/src/misc/types_struct.cpp: In static member function ‘static Anvil::MipmapRawData Anvil::MipmapRawData::create_1D(Anvil::ImageAspectFlagBits, uint32_t, uint32_t)’:
/home/snoopy/Desktop/inMyRoom_vulkan/Anvil/src/misc/types_struct.cpp:1462:28: error: ‘void* memset(void*, int, size_t)’ clearing an object of type ‘struct Anvil::MipmapRawData’ with no trivial copy-assignment; use assignment or value-initialization instead [-Werror=class-memaccess]
             sizeof(result) );
                            ^
In file included from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/types_classes.h:25,
                 from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/types.h:276,
                 from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/descriptor_set_create_info.h:26,
                 from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/src/misc/types_struct.cpp:22:
/home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/types_struct.h:1640:20: note: ‘struct Anvil::MipmapRawData’ declared here
     typedef struct MipmapRawData
                    ^~~~~~~~~~~~~
/home/snoopy/Desktop/inMyRoom_vulkan/Anvil/src/misc/types_struct.cpp: In static member function ‘static Anvil::MipmapRawData Anvil::MipmapRawData::create_1D_array(Anvil::ImageAspectFlagBits, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)’:
/home/snoopy/Desktop/inMyRoom_vulkan/Anvil/src/misc/types_struct.cpp:1489:28: error: ‘void* memset(void*, int, size_t)’ clearing an object of type ‘struct Anvil::MipmapRawData’ with no trivial copy-assignment; use assignment or value-initialization instead [-Werror=class-memaccess]
             sizeof(result) );
                            ^
In file included from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/types_classes.h:25,
                 from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/types.h:276,
                 from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/descriptor_set_create_info.h:26,
                 from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/src/misc/types_struct.cpp:22:
/home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/types_struct.h:1640:20: note: ‘struct Anvil::MipmapRawData’ declared here
     typedef struct MipmapRawData
                    ^~~~~~~~~~~~~
/home/snoopy/Desktop/inMyRoom_vulkan/Anvil/src/misc/types_struct.cpp: In static member function ‘static Anvil::MipmapRawData Anvil::MipmapRawData::create_2D(Anvil::ImageAspectFlagBits, uint32_t, uint32_t, uint32_t)’:
/home/snoopy/Desktop/inMyRoom_vulkan/Anvil/src/misc/types_struct.cpp:1515:28: error: ‘void* memset(void*, int, size_t)’ clearing an object of type ‘struct Anvil::MipmapRawData’ with no trivial copy-assignment; use assignment or value-initialization instead [-Werror=class-memaccess]
             sizeof(result) );
                            ^
In file included from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/types_classes.h:25,
                 from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/types.h:276,
                 from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/descriptor_set_create_info.h:26,
                 from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/src/misc/types_struct.cpp:22:
/home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/types_struct.h:1640:20: note: ‘struct Anvil::MipmapRawData’ declared here
     typedef struct MipmapRawData
                    ^~~~~~~~~~~~~
/home/snoopy/Desktop/inMyRoom_vulkan/Anvil/src/misc/types_struct.cpp: In static member function ‘static Anvil::MipmapRawData Anvil::MipmapRawData::create_2D_array(Anvil::ImageAspectFlagBits, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)’:
/home/snoopy/Desktop/inMyRoom_vulkan/Anvil/src/misc/types_struct.cpp:1542:28: error: ‘void* memset(void*, int, size_t)’ clearing an object of type ‘struct Anvil::MipmapRawData’ with no trivial copy-assignment; use assignment or value-initialization instead [-Werror=class-memaccess]
             sizeof(result) );
                            ^
In file included from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/types_classes.h:25,
                 from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/types.h:276,
                 from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/descriptor_set_create_info.h:26,
                 from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/src/misc/types_struct.cpp:22:
/home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/types_struct.h:1640:20: note: ‘struct Anvil::MipmapRawData’ declared here
     typedef struct MipmapRawData
                    ^~~~~~~~~~~~~
/home/snoopy/Desktop/inMyRoom_vulkan/Anvil/src/misc/types_struct.cpp: In static member function ‘static Anvil::MipmapRawData Anvil::MipmapRawData::create_3D(Anvil::ImageAspectFlagBits, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)’:
/home/snoopy/Desktop/inMyRoom_vulkan/Anvil/src/misc/types_struct.cpp:1570:28: error: ‘void* memset(void*, int, size_t)’ clearing an object of type ‘struct Anvil::MipmapRawData’ with no trivial copy-assignment; use assignment or value-initialization instead [-Werror=class-memaccess]
             sizeof(result) );
                            ^
In file included from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/types_classes.h:25,
                 from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/types.h:276,
                 from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/descriptor_set_create_info.h:26,
                 from /home/snoopy/Desktop/inMyRoom_vulkan/Anvil/src/misc/types_struct.cpp:22:
/home/snoopy/Desktop/inMyRoom_vulkan/Anvil/include/misc/types_struct.h:1640:20: note: ‘struct Anvil::MipmapRawData’ declared here
     typedef struct MipmapRawData
                    ^~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
make[2]: *** [anvil/CMakeFiles/Anvil.dir/build.make:544: anvil/CMakeFiles/Anvil.dir/src/misc/types_struct.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:137: anvil/CMakeFiles/Anvil.dir/all] Error 2
make: *** [Makefile:130: all] Error 2

OK, I think these warnings are actually legit. MipmapRawData holds shared pointers and memsetting these to zero means trouble.
I've fixed this internally and will push out a patch next week.

Dude, thank you. I will try compile with GCC 8.0 and close it if everything is fine. (wait till I reboot to ubuntu)

Hey had a look at code and the fix is way easier than you might think. Just delete memsets at:

Anvil::MipmapRawData Anvil::MipmapRawData::create_1D_array(Anvil::ImageAspectFlagBits, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)
Anvil::MipmapRawData Anvil::MipmapRawData::create_2D(Anvil::ImageAspectFlagBits, uint32_t, uint32_t, uint32_t)
Anvil::MipmapRawData Anvil::MipmapRawData::create_2D_array(Anvil::ImageAspectFlagBits, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)
Anvil::MipmapRawData Anvil::MipmapRawData::create_3D(Anvil::ImageAspectFlagBits, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)

There is already a default constructor that set the values to zero. GCC 8+ looks like dislike memsets.

Did a pull request. Now should be fine.

Thanks for contributing the PR. we already had this patched up internally which is why I did not merge your changes. Still, appreciate your work on this.
Fixed in the latest version.

kk


Addressed a few issues with recent Script Activity PR.

Related Issue:
#1197
Description of changes:
As described in the issue but to recap:

Added an is_script_truncated flag.
Added an entry to the type_id enum in the script object.
Improved descriptions in previous PR as requested at the time.

I would suggest to add "is_truncated" instead of "is_script_truncated" to a dictionary. Then this attribute can be used in multiple classes/objects to indicate truncation not only in scripts but also in payloads, logs, command lines etc.

I would suggest to add "is_truncated" instead of "is_script_truncated" to a dictionary. Then this attribute can be used in multiple classes/objects to indicate truncation not only in scripts but also in payloads, logs, command lines etc.

Thanks for the suggestion. This was also suggested during an internal discussion on this issue. I can see the usefulness of a general purpose attribute like this, and I actually searched the dictionary before I started this PR because I assumed such an attribute must exist already! However, I feel that the problem with is_truncated is that it can be ambiguous in certain contexts, even in the context where it is used here.
First I should clarify that the attribute I'm adding here is actually is_script_content_truncated and not is_script_truncated as I wrote above. I think this proposed name conveys that the value of the script_content attribute is truncated. If the attribute was named is_truncated as you suggest, I think the most likely (mis)interpretation is that the original script as observed by the security product was truncated.
But maybe I'm overthinking it and I don't have a very strong opinion either way. If other reviewers think that a generic is_truncated makes more sense, I'll happily switch to that.

This is an interesting topic to discuss. Note that, an attribute called is_attribute_truncated was recently added to the framework. Check #1172 for reference.
However, I think the specificity is quite important for this attribute. As exemplified in this PR's case, what is being truncated is quite important. Also, as evident here, we cannot always rely on the context provided by the corresponding object as it may not be sufficient to help distinguish.
We might risk creating a bunch of is_***_truncated attributes, but if the specificity is important then I think we should. Whichever path we end up choosing, we must be consistent throughout the schema, i.e. we'll need to change is_attribute_truncated to its more specific version if we go the route of specific truncated attributes.
Thoughts? @pagbabian-splunk @davemcatcisco @irakledibm

I think that it is a fundamental problem with OCSF. An attributes defined in a dictionary should represent a common generic values, such as is_truncated with associated common properties, such as boolean_t, is_array etc. Event/Object/Profile attributes should point to those dictionary attributes, however they may have an alias, such as is_script_content_truncated. This way a dictionary will not blow out of proportions and still address different use cases.

Agree about aliases. OCSF could easily add the meta schema alias which I’ve
always wished for. But an alias for a consumer or a data table is a
different column name and if it always collapsed to its root name it would
defeat the purpose and lose the specific name. The system consuming would
need to do a translation (like Splunk does for its aliases at read time).
In the end a particular OCSF event is a static entity.
Paul (from my mobile device)
On Fri, Oct 11, 2024 at 8:52 AM irakledibm @.***> wrote:

I think that it is a fundamental problem with OCSF. An attributes defined
in a dictionary should represent a common generic values, such as
is_truncated with associated common properties, such as boolean_t, is_array
etc. Event/Object/Profile attributes should point to those dictionary
attributes, however they may have an alias, such as
is_script_content_truncated. This way a dictionary will not blow out of
proportions and still address different use cases.
—
Reply to this email directly, view it on GitHub
https://github.com/ocsf/ocsf-schema/pull/1198#issuecomment-2407692685,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AS5LBZQARB3BXW3TZMFEH43Z27X4VAVCNFSM6AAAAABPSB4OKOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMBXGY4TENRYGU
.
You are receiving this because you were mentioned.Message ID:
@.***>

One thought is to distinguish between classes and objects, such that within objects, the object name is carried, while within classes, the generic name is used (because the event is always of a specific type_id).  Don't know what that would mean for the current state of things though.

Did a quick check: almost all of our boolean attributes are within objects, only 6 are in classes.  Most of the names are relatively generic: is_renewal (what is renewed?); is_managed (what is managed?); is_personal (what is personal); etc.  Some are more easily put into context, e.g. is_mfa.

Great discussion! But do we have a conclusion? Do I change is_script_content_truncated to a generic is_truncated?
FWIW, I still think that in this case, an is_truncated attribute on a script object is potentially confusing. The reason, as I've mentioned above, is that the flag is intended to denote that the script_content attribute is truncated - not that the underlying script itself was truncated.

Just to make a more general comment in the spirit of the discussion, was consideration ever given to supporting attributes that are scoped to a specific object (or local to that object if that phraseology is clearer)? I think this would avoid a lot of the issues we see with naming things.

Attn reviewers (@Aniak5, @zschmerber, @pagbabian-splunk, @floydtree, @mikeradka): As just discussed on the weekly call, the discussion in this PR is regarded as finalised, and this PR can now be merged once it has the necessary approval. I have just fixed conflicts that had arises. Thanking you in advance.