Use Optim or similar for Newton-Rhapson

Rather than rolling our own optimization for Cox models, I think we might be better off depending on a well-established package such as Optim to perform that if at all possible.

hi there!
is this repo still active? if so, i would be interested in picking this up.

incidentally, is this related to this error i'm seeing in the package tests:
Cox: Error During Test at /home/slowpoke/sandbox/Survival.jl/test/runtests.jl:188
  Got exception outside of a @test
  failure to converge after 1000 iterations.
  Stacktrace:
   [1] newton_raphson(::Survival.var"#17#18"{Survival.CoxAux{Float32}}, ::Array{Float32,1}; ρ::Float32, c::Float64, tol::Float64, max_iter::Int32) at /home/slowpoke/sandbox/Survival.jl/src/optimization.jl:20
   [2] _coxph(::Array{Float32,2}, ::Array{EventTime{Int64},1}; l2_cost::Float32, kwargs::Base.Iterators.Pairs{Symbol,Float64,Tuple{Symbol},NamedTuple{(:tol,),Tuple{Float64}}}) at /home/slowpoke/sandbox/Survival.jl/src/cox.jl:183
   [3] fit(::Type{CoxModel}, ::Array{Float32,2}, ::Array{EventTime{Int64},1}; kwargs::Base.Iterators.Pairs{Symbol,Float64,Tuple{Symbol},NamedTuple{(:tol,),Tuple{Float64}}}) at /home/slowpoke/sandbox/Survival.jl/src/cox.jl:200
   [4] #coxph#20 at /home/slowpoke/sandbox/Survival.jl/src/cox.jl:203 [inlined]
   [5] top-level scope at /home/slowpoke/sandbox/Survival.jl/test/runtests.jl:219
   [6] top-level scope at /buildworker/worker/package_linux32/build/usr/share/julia/stdlib/v1.4/Test/src/Test.jl:1113
   [7] top-level scope at /home/slowpoke/sandbox/Survival.jl/test/runtests.jl:189
   [8] include(::String) at ./client.jl:439
   [9] top-level scope at none:6
   [10] eval(::Module, ::Any) at ./boot.jl:331
   [11] exec_options(::Base.JLOptions) at ./client.jl:264
   [12] _start() at ./client.jl:484

?

is this repo still active? if so, i would be interested in picking this up.

I haven't had time to do active development of it, but I'd happily review PRs. :slightly_smiling_face:

incidentally, is this related to this error i'm seeing in the package tests:

Hmm, I don't recall seeing that error before. Is that running locally? If so, what Julia version and OS?

yes, i got this running on my local:
slowpoke@funcrusher:~$ julia --version
julia version 1.4.1
slowpoke@funcrusher:~$ uname -a
Linux funcrusher 4.15.0-99-generic #100-Ubuntu SMP Wed Apr 22 20:32:47 UTC 2020 i686 i686 i686 GNU/Linux

since the test fails with "too many iterations", i wondered if maybe the custom implementation of Newton-Raphson in optimization.jl needed replacing precisely because it didn't have good convergence behavior.

My thinking for replacing the implementation here was to reduce the maintenance burden for this package by reusing functionality implemented and maintained elsewhere by domain experts. If it gives us better convergence behavior, that's even better. :wink:


Let plugins check what enviornment a file is used for inside the transform hook

Is your feature request related to a problem? Please describe.
I recently ran into a bug where a Vite plugin would transform code in both the main thread and worker thread. However, the worker thread would then fail to load because the transformation depended on the presence of objects like HTMLElement.
Describe the solution you'd like
With the new server side rendering feature, a third parameter is passed to plugins to indicate if the server side rendering context is used. I'd like to see this parameter changed (or a 4th parameter introduced) to also indicate if the script will be used as a worker.
Describe alternatives you've considered
This information could also be in the Rollup context instead.

There is now the isWorker field in the resolved config to provide this information when the Vite plugin is applied to worker.plugins config. The normal plugins config doesn't affect worker bundling, so I think this is resolved now.


realsense-viewer software rendering/processing incorrect texture

Required Info

Camera Model
{ D435 }

Firmware Version
<IP_ADDRESS>

Operating System & Version
Ubuntu 18.04

Kernel Version (Linux Only)
4.15.0-162-generic

Platform
PC

SDK Version
2.50.0-0~realsense0.6127 (apt package and librealsense version)

Language
realsense-viewer

With GLSL for rendering and processing

Without GLSL rendering and processing

GLSL variant only shows data where both depth and rgb exist.
Software variant renders part where color data doesn't exit with incorrect texture.
I am mainly reporting it because it is cause for other issue.

Hi @bmegli   I note that your Viewer has a warning displayed about multiple udev rules.

This warning may occur if the librealsense SDK has been built from both packages and source code on the same computer.  The warning should disappear if the rule at the location /etc/udev/rules.d/ is deleted from your computer, as described in https://github.com/IntelRealSense/librealsense/issues/6153#issuecomment-605687547

Hi @MartyG-RealSense,

I note that your Viewer has a warning displayed about multiple udev rules.

Thanks for pointing that out. To check if it affects the outcome I just confirmed on another machine:

where I have packaged librealsense version only
the same effect manifests (different rendering in software & GLSL)
machine is:

Ubuntu 20.04
librealsense <IP_ADDRESS>~realsense0.5307 (apt-cache policy librealsense2)

I ran my own tests on a D435 with and without the GLSL options.  The results were similar to your own in terms of the more restricted field of view when the GLSL options are enabled.
GLSL options enabled

GLSL options disabled

You do not have to have both options enabled or disabled.  You can choose to disabled one or the other too (Rendering or Processing).  Having Rendering enabled and Processing disabled produced the narrow field of view, whilst having Rendering disabled and Processing enabled produced the wider field of view (at the cost of a possibly higher CPU utilization).
If the wide view is your preference, you could therefore try exporting a ply with Rendering disabled and Processing enabled to see how it affects the results.

Thanks for testing it out.
I am aware of some differences in libreleanse processing/rendering paths (CPU/SSE/GLSL/CUDA).
I wouldn't even bother reporting that if it wasn't for #10006.

If the wide view is your preference, you could therefore try exporting a ply with Rendering disabled and Processing enabled to see how it affects the results.

The problem is mainly with the wide view:

which has incorrect texture data where texture doesn't exist
is used for for exporting to ply regardless of what user sees

so user possibly sees narrow FOV without incorrect texture
but exports wide FOV with incorrect texture

Yes, thank, I could probably use the script.
It's either:

align depth to color before converting to point cloud and export
or UV map to depth and manually filter out points with UV coordinates outside [0, 1] range during export

Hi @bmegli  Do you require further assistance with this case, please?  Thanks!

No, I know what is happening and how to workaround the problems. Thanks.

Excellent to hear that you have a workaround, @bmegli - as you do not require further assistance with this case then I will close it.  Thanks again!


Password hash

I remotely connected to the DVR and got access to the console which allows me to execute some commands.  Along with this, I see the inscription "Attack console failed. Using local only".  Why do I see this inscription but at the same time I can use the console and get some information about the device.  What command should I use to add a new user or get the password hash from the admin user?

Dhip protocol for port 5000

In the case of port 5000, this does not work at all.

I remotely connected to the DVR and got access to the console which allows me to execute some commands.
I see it is a NVR (Class: NVR)

Along with this, I see the inscription "Attack console failed. Using local only". Why do I see this inscription but at the same time I can use the console and get some information about the device.
In most devices there is builtin "Debug Console", and that we trying to attach. Working fine with IPC/VTH/VTO/SD... etc, DVR/NVR has builtin "Debug Console" as well, but it will not allow us to attach to that. To be able to use other commands, that has been researched and implemented in the python script, the script will accept that we cannot attach to the builtin "Debug Console", the script will inform and just continue.

What command should I use to add a new user or get the password hash from the admin user?
That has not been implemented in the script on purpose, the research and script is concentrated on things that you cannot normally access from Web GUI, where you can add/remove/modify users.


Add example config file

For users to use as an example, for an easy and quick place to find settings in, and maybe for copying and using as a template to start their config from.
The documentation of each field should be included directly above it as a comment.
Maybe put the defaults as values of fields that have defaults, or at least comment the default above the field.
It would be nice if this would be generated automatically with the schema (or out of the schema) if that's easy to do, but that's not a must in my opinion.

Thanks @opeolluwa !
Our configuration follows the json schema specified here. Our CI keeps this file up to date with the code. The following steps would need to be completed:
Example File Generation Script

We'd need a script that generates an example configuration file based on this schema. It should be a .toml file to support documentation.
Ideally it would generate a configuration file with the most potential branching. For example, the feature->fs key can take true/false as a value, or an object - we'd ideally want the example configuration file to use the object option.
However, an initial version of the script that just uses the default option (or even the first option) is acceptable. The important thing is for the script to be deterministic and generate the exact same file whenever it's run on the same schema.
The above script should be added to the scripts/ directory.

Adding the example configuration to the repo + linting

We'd need to add the generated example file to the repository (e.g. under mirrord/config/example-config.toml). A step should be added to the CI workflow that insures the file is up to date with the current schema.

That's it, let me know if you have any questions!

@eyalb181  To be sure,
the task requires a script that generates a sample config file as toml using the provided schema. In addition, this schema will be updated from time to time by the CI and once it does a new toml config file should be created.

@eyalb181  To be sure,
the task requires a script that generates a sample config file as toml using the provided schema. In addition, this schema will be updated from time to time by the CI and once it does a new toml config file should be created.

@opeolluwa The first part is right - it requires a script that generates a sample config file.
Re the second part - the schema is updated manually by devs whenever e.g. a new configuration type is added, using the check_schema_file_exists_and_is_valid_or_create_it test in mirrord/config/src/lib.rs. Whenever that happens, we'd also want the devs to manually run the sample generation script (it can even be run as part of check_schema_file_exists_and_is_valid_or_create_it, since they always have to be run together anyway).
Finally, to make sure we don't forget to generate a new sample file if the schema changed, we'd want to add a CI step that makes sure the schema matches the sample file.

Oh great!

So essentially the core task is about getting creating the config.

I think this was pretty much covered with @meowjesty 's work on the configuration.


Crash opening solar evaporation plant controller

When I opened the controller's gui, I crashed. http://pastebin.com/9Ha56MHY
I was holding the advanced solar that is part of the multiblock, the multiblock was formed, and there was an ultimate energy cable next to the controller I had accidentally placed.
edit:additional details
edit:the multiblock may not have been complete

Already reported


Role localization

About the PR
In this PR I've localized departments and antag roles. You can see departments in character editor and during late join role selection. These are role categories. "job" was localized, but the names themselves like Security or Civilian were not.
Also I've localized antag role name and descriptions. These can also be seen in character editor. Nothing fancy.

I have no idea why this failed

@metalgearsloth sorry for tagging you, but is it possible that check failed for no reason? This happened to me once already during my first PR, I've performed basically an empty commit and the check passed,
Everything works fine on my end, test, which fails here, passes on my end. This PR is not affected by other changes and I didn't do anything new.

yes, this test failure is erroneous, most likely a pooling issue. i can rerun checks

yes, this test failure is erroneous, most likely a pooling issue. i can rerun checks

thanks

yes, this test failure is erroneous, most likely a pooling issue. i can rerun checks

thanks

yup. it worked

While this was hanging someone else implemented part of this PR into the master

PR probably needs re-doing. Role timers was first and needed to do it for proper tracking.


I can't open a whole folder

I have a folder with about 2k songs, and want to select them all for player, but there is no such feature. Instead i should go to folder and select by bunches, so spending a lot of time for scrolling and loading

Yeah, it's very bad:(
It would be great if you maked a recursive adding to player.

News! We're working on it :) The current limitation are because we're using strict Google Drive API permissions. To be able to open a folder today we would need full access to your entire drive (vs "only files opened with this app"). But opening a folder with a similar permission level might be possible soon.

I don't know how google drive api works, but:
when I click on "Add audio files on Google Drive" I see the popup with many audio files (but not all ofc). Maybe you can make it possible to select files by mask (*.mp3, for example) ?
If you did it, user could at least start playing all his audio.
I'm very sorry for my english:) I hope you understood me.

You can actually just type .mp3 and/or *.mp3 in the search box and only your mp3s should be displayed:

@nicolasgarnier Once we search for all mp3 files in the folder, is there an easy way to select the entire list? Or do we have to scroll down and wait for the entire list to load before using Shift-Select

@Stevoisiak click the first one and then simply shift-click the last one


3.5.1: cannot add module metadata in project tree

I'm trying ot add .{dist|egg}.info metadata in structlog module which is using as build backend flit and looks like it is not possible to do that
+ cd structlog-21.5.0
+ /usr/bin/python3 -sBm build -w
* Creating venv isolated environment...
* Installing packages in isolated environment... (flit_core >=3.4,<4)
* Getting dependencies for wheel...
* Building wheel...
Successfully built structlog-21.5.0-py3-none-any.whl
+ pip install -e .
Defaulting to user installation because normal site-packages is not writeable
Obtaining file:///home/tkloczko/rpmbuild/BUILD/structlog-21.5.0
  Installing build dependencies ... done
  Checking if build backend supports build_editable ... done
  Getting requirements to build editable ... done
  Preparing editable metadata (pyproject.toml) ... done
Building wheels for collected packages: structlog
  Building editable for structlog (pyproject.toml) ... done
  Created wheel for structlog: filename=structlog-21.5.0-py3-none-any.whl size=8107 sha256=e193ec3c74a678106d51a2b593a7d5037c7fa94cc2fdeae0fbb66b7eb0081bc1
  Stored in directory: /tmp/pip-ephem-wheel-cache-68zzmr4f/wheels/35/89/3a/cd47c49b9d6c16185c5a0f83a41dd101771681f0d2bcadf8f3
Successfully built structlog
Installing collected packages: structlog
  Attempting uninstall: structlog
    Found existing installation: structlog 21.5.0
    Uninstalling structlog-21.5.0:
      Successfully uninstalled structlog-21.5.0
Successfully installed structlog-21.5.0

Loks like pip is not able to take [project] section from pyproject.toml.
How can I do that? flit command seems does not offer anything like generate .{dist|egg}.info directory :/

If you're writing a PEP 517 frontend, you can use the prepare_metadata_for_build_wheel hook to create a .dist-info folder. Normally this would be done in some temporary build folder, but the frontend specifies where it should go, so it can ask for it in the project directory if it wants.
Otherwise, the .dist-info folder is generated in the wheel when you create that, and it also exists in site-packages when you install a distribution. There's normally no reason to have it in the project source tree, and I consider it a misfeature that setuptools tends to create extra files there. If you want it for some reason, you can extract it from a wheel or copy it back after installing.
.egg-info is a setuptools specific thing, not part of any standard. Flit will only ever work with the standardised .dist-info folders.

There's normally no reason to have it in the project source tree, and I consider it a misfeature that setuptools tends to create extra files there. If you want it for some reason, you can extract it from a wheel or copy it back after installing.

+55% of my rpm packages with python modules renders documentation over sphinx. Amongst those packages ~30% needs access to the package metadata to injet things like version, athor or other to rendered documentation. Usually it is not a big problem because whem setuptools is used as pep517 backend metadata directory is created by default. That means that performed as next step documentation rendering can be done without any issues.
So what exactly needs to be added in project.toml tto have created metadata directory during the build when flit is used?

Can you point me to an example of a package built with Flit where the Sphinx docs rely on a .dist-info folder? I've written and contributed to Sphinx docs for many different projects and I don't recall ever coming across Sphinx using a .dist-info folder. It also seems like that wouldn't work with Flit for anyone, so I can't see why project maintainers would set it up that way (or keep it that way if they switched to Flit).

@kloczek Please read https://pip.pypa.io/en/latest/reference/build-system/ to understand how setup.py based projects vs pyproject.toml based projects are different. That documentation also goes into how the process for generating metadata for those two projects is different. You can use the https://github.com/pypa/pep517/ project to write a frontend that can generate metadata as you need.

I've already pointewd on such example .. structlog module.
I've already mentioned about reason to use modume metadata during documentation rendering which is for example injecting modume version or orgr metadata entries to the rendered documentation.
As thopse metadata are or may chage between releases it make sense to not hardcode those details into documentation source.
So .. does it mean that when flit is used as pep515 backend there is no currently any way to generate metadata diorectory?

So .. does it mean that when flit is used as pep515 backend there is no currently any way to generate metadata diorectory?

There is, and @takluyver has mentioned it already:

If you're writing a PEP 517 frontend, you can use the prepare_metadata_for_build_wheel hook to create a .dist-info folder. Normally this would be done in some temporary build folder, but the frontend specifies where it should go, so it can ask for it in the project directory if it wants.

@kloczek Please read https://pip.pypa.io/en/latest/reference/build-system/ to understand how setup.py based projects

We are not taking about setuptools but about flit. Reading that documentation will not help me on altering build ptrocedure to have metadata directory generatyed before rendering documentation .. please stick to the flit` subject.

It will.

https://www.python.org/dev/peps/pep-0517/#prepare-metadata-for-build-wheel, because I'm sure you will ask a bunch of follow up questions that are already answered in the PEP. :)

@kloczek Your comment seems to be poorly formatted. I request you to read https://help.github.com/articles/getting-started-with-writing-and-formatting-on-github/ and improve the formatting of your comment by editing it in place, using the pencil icon in the corner.

So moment .. does it mean that flit code needs to be prepareded/fixed using that hook to be able to generate module detadata?

Yes. I'm not going to be answering any more direct questions that are clearly answered in the documentation I've already linked you to. Please do the reading work necessary to understand how to achieve what you're trying to do.
If something is unclear, feel free to ask more questions.

I've already pointed on such example .. structlog module.

You did, my apologies. It appears that structlog is set up that it expects you to install the Python package first, then build the docs. This is what both the Readthedocs config and the docs task in tox.ini will do. If possible, I'd recommend that you do that too.
I tried, out of interest, copying the .dist-info folder back to the project directory and then uninstalling structlog. It doesn't work - the docs build still fail with importlib.metadata.PackageNotFoundError, because it's not looking for the metadata in that location (I tried both with make and the sphinx-build command directly). You could probably patch conf.py to make that work, but that seems like a workaround for a workaround.
@pradyunsg I think there was a sensible question to answer here. It's just come as an X Y problem, where X is 'make Sphinx builds using importlib.metadata work' and Y is 'create a .dist-info folder in the project tree'.

OK so it woud be really good to implemt calling that hook.
I'v ealready migrated and tested only 1/8 of all my rpm packages with python modules to pep517 based build procedure.
[tkloczko@ss-desktop SPECS]$ grep 'python3dist(flit)' *
python-cssselect2.spec:BuildRequires:   python3dist(flit)
python-installer.spec:BuildRequires:    python3dist(flit)
python-jeepney.spec:BuildRequires:      python3dist(flit)
python-sphinxcontrib-github-alt.spec:BuildRequires:     python3dist(flit)
python-structlog.spec:BuildRequires:    python3dist(flit)
python-threadpoolctl.spec:BuildRequires:        python3dist(flit)
python-tomli.spec:BuildRequires:        python3dist(flit)
python-tomli-w.spec:BuildRequires:      python3dist(flit)
python-typing-extensions.spec:BuildRequires:    python3dist(flit)
[tkloczko@ss-desktop SPECS]$ grep 'python3dist(flit)' * -l| xargs grep %py3_build_sphinx_man
python-cssselect2.spec:%py3_build_sphinx_man
python-jeepney.spec:%py3_build_sphinx_man
python-structlog.spec:%py3_build_sphinx_man

Looking on above list it will be more than one such case.

It appears that structlog is set up that it expects you to install the Python package first, then build the docs

This is not what prezisely is expected. In such cases it is expected access to the module metadata .. only.
That it is only coincidence that after full module instalation metadata are available.
As setuptools by default during build generates metadata directoey in cureret directory I think that flit could follow that behaviour. This will solve typical build, install and testing procedure needs procedures typiucally used on packagin (rpm or Solaris IPS or other when such build is not performed from root).

BTW flit and sphinx.
I'm using so far setuptools<>sphinx integration to rented man pagase https://www.sphinx-doc.org/en/master/usage/advanced/setuptools.html.
Of course as flit is used it is not possible use straight that way so I;m forced to use dummy setup.py to be able use that procedure.
[tkloczko@ss-desktop SPECS]$ grep 'python3dist(flit)' * -l| xargs grep echo
python-cssselect2.spec:echo 'from setuptools import setup; setup()' > setup.py
python-jeepney.spec:echo 'from setuptools import setup; setup()' > setup.py
python-structlog.spec:echo 'from setuptools import setup; setup()' > setup.py

[tkloczko@ss-desktop SPECS]$ rpm -E %py3_build_sphinx_man
\
        PBR_VERSION=%{version} \
        SETUPTOOLS_SCM_PRETEND_VERSION=%{version} \
        /usr/bin/python3 setup.py build_sphinx -b man --build-dir build/sphinx

It would be nice if flit will have its own flit<>sphinx integration (as I wrote more than half my modules provides possibility to render dosumentation in necessay format)

And .. probanly the best would be if pep517 would provide hook to generate documentation :)

That it is only coincidence that after full module instalation metadata are available.

No, it's not a coincidence. That is the metadata that accompanies an installed module. It's described in a specification entitled Recording installed projects. The coincidence is that setuptools also tends to dump metadata in the project tree when you do certain operations.

As setuptools by default during build generates metadata directoey in cureret directory I think that flit could follow that behaviour.

Writing the .dist-info in the project tree doesn't directly solve the case you tried, and I consider it a setuptools misfeature - I don't want extra files showing up in my project directory.
I understand that you've developed a whole load of tricks around setuptools, and I'm sorry that we're breaking them. But we've spent a load of time and effort getting away from the idea that everything in packaging must either use setuptools or pretend to be setuptools. We'll help you adapt to that, but we're not interested in arguments that 'you should do this because setuptools does'.

It would be nice if flit will have its own flit<>sphinx integration
And .. probanly the best would be if pep517 would provide hook to generate documentation

We've been over this topic at some length in other issues. Both Flit and PEP 517 are about packaging - that is, how we get from a source tree to an installable artefact and to an installed Python package (importable libraries, runnable scripts, etc.). From the perspective of people working on Python packaging, building documentation is an entirely separate concern, so we're not about to mix it into packaging tools or standards.
At a practical level, it's also not clear to me what 'flit<>sphinx integration' would do. It would be neat in theory if there was one accepted way to build docs regardless of packaging or documentation system, but given that you're already using the Sphinx specific setup.py build_sphinx, it seems much simpler to use sphinx-build directly and not run it through a packaging tool.
Fedora has already developed tools to put Python packages into rpms using PEP 517 interfaces. Maybe you could reuse some of their work? Two Fedora developers gave a talk about it at PackagingCon, which you can see here: https://www.youtube.com/watch?v=pJlqB-PA96E

Writing the .dist-info in the project tree doesn't directly solve the case you tried, and I consider it a setuptools misfeature - I don't want extra files showing up in my project directory.

So what is the proper/right solution in such cases when after build other steps may need access to module metadata before actual install?
Just in case .. those other steps may have nothing to do with setuptools per se.

At a practical level, it's also not clear to me what 'flit<>sphinx integration' would do

Using setuptools<>sphinx integration on packaging is VERY usefull because it doesn't matter where source of the documetaiion and conf.py files are I can render docuemntation usimg exactly the same command (setup.cfg contais documentation root relative directory)
[tkloczko@ss-desktop SPECS]$ grep %py3_build_sphinx_man python-* | wc -l; ls -1 python-*|wc -l
378
738

Fedora has already developed tools to put Python packages into rpms using PEP 517 interfaces

If may I point that Fedora do not care about generate python modules documentaion and/or generate that documentation in unified form.
Look .. Fedora has now ~2.7k moduels packages and only handful have included documentation (in lass cases than in my 738 packages with python modules).
[tkloczko@ss-desktop SPECS.fedora]$ grep '%package.* doc' python-*spec| wc -l
252

BTW pep517 and Fedora. Still %75 of all Fedora modues are using pep517
[tkloczko@ss-desktop SPECS.fedora]$ grep %py3_build python-* | wc -l; ls -1 python-*|wc -l
2061
2716

(In that case I would ignore fact that most Fedora packagers do not understand that if someone needs to install package X without documentation thjat documentation do not need to be packages in separated package because on install time it is possible to decide to install that package with or without documentation by use or not --excludedoc rpm option).
In other words .. Fedora it is not the best example to show something in context of package python modules documenation :(

So what is the proper/right solution in such cases when after build other steps may need access to module metadata before actual install?

There isn't. You'll need to install the package in the environment where you're trying to generate the documentation. Here's an example of how that could work, as a sequence of shell commands:
pip install .  # replace this with whatever you want to do to install structlog
sphinx-build -b html docs/ docs/_build

Just finished watching that video.
I did not learn anything new from that presentation.
In that presentation there is no even single sentence about python modules documentation standardisation (which I did in my own  rpm macros).
They mention for example about testing packages with python modules however they are not using that widely in all possible cases.
[tkloczko@ss-desktop SPECS.fedora]$ grep %check python-*spec -l| wc -l; ls -1 python-*spec |wc -l
1918
2716

[tkloczko@ss-desktop SPECS]$ grep %check python-*spec -l| wc -l; ls -1 python-*spec |wc -l
738
738

I'm strictly using provided test suites so if you will looking on my profile activity recently majority of opened by me tickets is about test suites issues.

So what is the proper/right solution in such cases when after build other steps may need access to module metadata before actual install?

You may choose any of these options:

Install the package somewhere (even if temporarily), read its metadata from there
Build a wheel, extract metadata from that
Write some Python code that calls the PEP 517 prepare_metadata_for_build_wheel hook to create just .dist-info wherever you need it.

Using setuptools<>sphinx integration on packaging is VERY useful because it doesn't matter where source of the documentation and conf.py files are I can render documentation

I understand that that's useful. But it's nothing to do with packaging, and insisting that it is is not getting you anywhere. It's not going to be a feature in Flit. You will get further by accepting that and thinking about what to do instead than
If you want to make a little helper tool that looks for a relative path to docs in a specific key of pyproject.toml and passes that to sphinx-build, feel free. Even better, the same thing will work whether the package uses flit, setuptools, poetry, or anything else out there.
In practice, most packages I've seen call the folder either doc or docs. So if I were you, I'd just write something that tries each of those in turn for building docs, and then deal with the remaining cases manually.

Still %75 of all Fedora modules are not using pep517

That doesn't surprise me: most Python packages still use setuptools, so there's no need to change how they're packaged. It doesn't subtract from the fact that they have the mechanisms to deal with PEP 517 packages, and they appear to be using them for many packages without major problems.
I'm going to close this now, because I don't think it's going anywhere. You seem very determined to tell us exactly how we should approach packaging, and you don't seem to pay any attention when we disagree. We went through this at length on issue #429 as well. Engaging in an endless argument is a waste of everyone's time.

pip install .  # replace this with whatever you want to do to install structlog

Please look one more time on top of this ticket in which I've already wrote that this does not work because pip (probably because pip do not understand flit metadata description provided in project.toml).
IIRC I've already mentioned in one of the flit rickets that flit is not sharing that section with what setuptools takes from that files.
Result is that pip is not generating module metadata directory.

I'm going to close this now, because I don't think it's going anywhere. You seem very determined to tell us exactly how we should approach packaging

100% wrong impression .. please.
I'm only describing typical problems of the python modules packaging using general packaging software like rpm or Solaris IPS.
I did not told even single word about do anything.
I've suggested some new features (basing on substantial number of packages cases) however all that was only suggestion which should be verified/discussed before make the decision about which side of all processes should alter own procedures.
IMO fact that when flit is used as backend of the pep517 is kind of bug.
Is that flit or pep517 issue?
Looking on the fact it is substantial number of cases where access to module metadata just right after build I think that maybe it would be good to move that operation from al backends to pep517? .. because those metadata should be always in the same format (however I'm not 100% sure and I have no even idea how difficult would be such modification).
Nevertheless seems like delegating generate metadata to the backend modules seems it may be pep517 design issue (correct me if I'm wring) because all backend modules would be sharing here 100% of the code.

We went through this at length on issue #429 as well. Engaging in an endless argument is a waste of everyone's time.

That ticket case was about proposition of handling documentation build by flit.
This ticket is only about modules metadata which may be need not only during documentation rendering procedures.
Both tickets are sharing some bits but they are generally about two different steps.

IMO fact that when flit is used as backend of the pep517 is not generating module metadata is kind of bug.

It is generating that metadata. Do a pip install . in a Python package (use flit / setuptools or whatever valid build-backend you like), look inside site-packages, notice that there's going to be a [whatever].dist-info folder.
If you're looking somewhere else, that's the wrong place to look. Beyond that, I suggest you read PEP 517 and the links that have been shared with you earlier in this thread, instead of dismissing the information being shared with you, to help you understand things, by the folks involved in designing the mechanisms that give you what you want. 🤷🏽

It is generating that metadata. Do a pip install . in a Python package

Please ttry to do that with structlog module (https://github.com/hynek/structlog/)
Again I can only repeat what is on the top of this ticket.
[tkloczko@ss-desktop structlog-21.5.0]$ pip install .
Defaulting to user installation because normal site-packages is not writeable
Processing /home/tkloczko/rpmbuild/BUILD/structlog-21.5.0
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: structlog
  Building wheel for structlog (pyproject.toml) ... done
  Created wheel for structlog: filename=structlog-21.5.0-py3-none-any.whl size=53394 sha256=25248d87e3459092b5c7f59f3e97b743cdc8a5593212af9f6f821bc5a3280d4c
  Stored in directory: /home/tkloczko/.cache/pip/wheels/35/89/3a/cd47c49b9d6c16185c5a0f83a41dd101771681f0d2bcadf8f3
Successfully built structlog
Installing collected packages: structlog
  Attempting uninstall: structlog
    Found existing installation: structlog 21.5.0
    Uninstalling structlog-21.5.0:
      Successfully uninstalled structlog-21.5.0
Successfully installed structlog-21.5.0
[tkloczko@ss-desktop structlog-21.5.0]$ find . -name \*-info
[tkloczko@ss-desktop structlog-21.5.0]$

Without structlog metadata I cannot make sphinx documentation
running build_sphinx
Running Sphinx v4.3.2

Configuration error:
There is a programmable error in your configuration file:

Traceback (most recent call last):
  File "/usr/lib/python3.8/site-packages/sphinx/config.py", line 329, in eval_config_file
    exec(code, namespace)
  File "/home/tkloczko/rpmbuild/BUILD/structlog-21.5.0/docs/conf.py", line 46, in <module>
    release = metadata.version("structlog")
  File "/usr/lib64/python3.8/importlib/metadata.py", line 530, in version
    return distribution(distribution_name).version
  File "/usr/lib64/python3.8/importlib/metadata.py", line 503, in distribution
    return Distribution.from_name(distribution_name)
  File "/usr/lib64/python3.8/importlib/metadata.py", line 177, in from_name
    raise PackageNotFoundError(name)
importlib.metadata.PackageNotFoundError: structlog

@pradyunsg said "look inside site-packages", which your find command does not do. As he added, "If you're looking somewhere else, that's the wrong place to look."
We've both tried to explain that the generated metadata goes in the installation directory, not the project source tree, and it's found in site-packages when building the docs. I did try this locally with structlog: I installed from a git checkout, saw the .dist-info directory in site-packages, and was successfully able to build the docs.

We've both tried to explain that the generated metadata goes in the installation directory, not the project source tree, and it's found in site-packages when building the docs. I did try this locally with structlog: I installed from a git checkout, saw the .dist-info directory in site-packages, and was successfully able to build the docs.

And I've been trying to explain that metadata *directory but not that directory inside .whl archive produced as part of the build process should be added. That metatadata inside of the .whl are useless for sphinx.
Modules which are using setuptools as pep517 backend produces .egg-info directory (this will soon change to .dist-info by default).
Looks like poetry has the same issue like flit but that is another story.
Again: about 60% of my all rpm spec files used to package python modules contains sphinx documentation. About 30% of all those modules to build documentation using sphinx needs module metadata to inject things like author, version or other bits to render documentation in exact output format.
So far flit is used by only handful modules so it is not big deal .. yet.
Really .. please to understand whole workflow of the build process during packaging into for example rpm or Solaris IPS package with rendering documentation as well.

It is produced in the site-packages directory when you install, not just in the wheel. Building the documentation works with it there. Install the Python package first, then build the docs - or come up with a workaround like installing to a temporary directory and setting PYTHONPATH.
 You certainly haven't convinced me that anything needs to change in Flit. I'm sorry, but I'm going to lock this issue now - the endless argument is a waste of both of our time, and a source of frustration. When I get time for open source work, I want to do something more productive than this.


Enable OSCAR2

Will require a few days for both the old and new sources to update their respective dataset names. Shouldn't be any issue if for a few days, the datasets have the same name; one of them should consistently take precedence.
Also updates the OSCAR info message.

Realized the original suffix approach won't work because the dataset filters only care about the start of the name; fixed to give the old datasets a prefix instead.


[SPARK-44636][CONNECT] Leave no dangling iterators

What changes were proposed in this pull request?
Minorly refactored execute functions to not leave dangling iterators
(Note: we also should do that with SparkResult, however in almost all cases there should be no problem with iterators not consumed).
Why are the changes needed?
Needed for ongoing work regarding session reattachment.
Does this PR introduce any user-facing change?
No
How was this patch tested?
This is intended to be tested after session reattachment is complete (cc @juliuszsompolski).

Merging.


Verilog: blink_reset: fix rst_n pin name (r0.2)

blink.v had the input pin named rsn_n, but rst_n is what is described in orangecrab_r0.2.pcf
It took me an embarrassingly long amount of time to realize rsn_n != rst_n. My eyes just didn't want to believe they weren't the same thing! 😂

Whoops looks like that one slipped through in f83a7256f73c88d4ce3c53bb3d601afda7d3ee72
Thanks!

I will not disclose the number of times I ran make clean, make wondering what the heck I was doing wrong. Let's just say, maybe I should get my eyes checked!

Ideally I should set these examples up with the github CI system, which would catch something like this.
Kind of similar to this: https://github.com/gregdavill/DiVA-firmware/runs/1412167980?check_suite_focus=true

That's a fantastic idea! Since I've got your ear for the moment: are you interested in having other examples in this repo as well? I'm using the crab as my first foray into writing my own verilog, and wouldn't mind at all forking out my adventures into bite-sized chunks. (Like today's project was building an 8-bit PWM to drive the LEDs.)

CI added: https://github.com/gregdavill/OrangeCrab-examples/runs/1445080515
Yep! Just open a PR for each example you want to add.


Machine win-15 went dead from network connection.

Machine win-15 went dead from network connection.

Machine win-15 is back online. Windows OS is prompting diag setup Windows environment, click on cancel diag and it works again.


WIP: Support for transforms

This PR is intended to add support for transforms (https://www.elastic.co/guide/en/elasticsearch/reference/current/transforms.html).
This is my first attempt to contribute to an open-source project; being new to this, I apologize in advance if I inadvertently break some rules/guidelines. Also, full disclaimer, Go is not my main programming language and I haven't done any previous coding for Terraform providers.
Feedback is welcome (obviously). While in its current state the code is functional (at least during the minimal tests I've performed), I'd like to point out a couple of design choices (in the current code) that may not be optimal:

most configuration is done through dedicated resources block, but the pivot and latest props are handled as raw json content;
the start/stop functionality is mapped through the enabled property. A different (better?) choice might have been a dedicated resource (such as elasticstack_elasticsearch_transform_state), because start/stop is a different API flow (not part of the usual CRUD).

Open points:

support for import functionality
improved documentation / acceptance test
community feedback
cleanup

Resolves #49

the start/stop functionality is mapped through the enabled property. A different (better?) choice might have been a dedicated resource (such as elasticstack_elasticsearch_transform_state), because start/stop is a different API flow (not part of the usual CRUD).

Both approaches will work, and there doesn't seem to be an idiomatic approach here (some providers have a property on the resource, some have a separate resource). If you're happy with the property then we can start with that.

Also can we add a changelog entry here in this PR

@tobio , thank you for the feedback, really appreciated. As you can tell, I'm still learning Go :) . I made a couple of pushes to fix most (if not all) of the issues. Not really sure about the "Resolve conversation" policy (who should be pushing those buttons), so I left that untouched.

Not really sure about the "Resolve conversation" policy

It's totally ok for you to hit those buttons. Personally I find that easier since it's clear that you've made changes to address that.


fix: exit preview button error

Fixes #63,#83
Describe the changes you have made in this PR -
now the exit preview button is working fine as the element needs to be added to the app component and the quick panel needs to hide.
Screenshots of the changes (If any) -

Note: Please check Allow edits from maintainers. if you would like us to assist in the PR.

Hi @GarvitSinghal47
We have this quick button component, ideally which should hold the logic for Show and Cancel Preview.
currently the button has an id and the logic present in ux.js file and logic is mapped to that id in listeners.js file.
Can you try to move the logic into thescript tag of component.

Okk i will do that.

I want to know one more thing did you want only the implementation to be move to the vue file Or all listners related to it also need to be implemented Or controlled from vue file as well .

@devartstar done with the changes , plz review them

@GarvitSinghal47 nice job, just a few changes

since we are migrating from jQuery, refrain from using it.
try using <script setup lang="ts"> to maintain consistency.

and it would be good to go.

@GarvitSinghal47 nice job, just a few changes

since we are migrating from jQuery, refrain from using it.
try using <script setup lang="ts"> to maintain consistency.

and it would be good to go.

   @devartstar done the changes.

@devartstar done the changes suggested.


Set PlaceHolder when get Firebase EmailAddress

When logging in to google, add an email address from the beginning on the opening application screen.
https://youtu.be/tam4sved2tk

Maybe think about making the email address Text widget to look a bit more read-only and suggest to the user that it is clearly a non-editable fiel

d?


Add OrbitFakeClient

Add OrbitFakeClient
This is a command line client used to trigger OrbitService to take a capture,
in order to perform performance testing of OrbitService on YHITI.
Bug: http://b/185987548
Test: Run OrbitService on a gamelet running Trata, run OrbitFakeClient with
different command line options and verify from the logs of OrbitService that
a capture with the corresponding options is taken.
Package OrbitFakeClient in Orbit.zip
So that it can be used in YHITI.
Bug: http://b/185987548
Test: Manually triggered
https://fusion2.corp.google.com/invocations/fee8652a-2220-42c2-988d-e6e87ea4c933
and verified the content of the final Orbit.zip.

Sorry for being late.

Late?


Support for interactive use?

I've been trying out the bindings - very nice work (Geant4 has a plan to migrate to pybind11, so would be interested to see if we could collaborate more here)!
One minor gotcha I encountered when naively trying to import the package from interactive Python (NB: from a local build, not a pip install):
$ PYTHONPATH=$PWD/source python3.9
Python 3.9.8 (main, Nov 10 2021, 06:03:50)
[Clang 12.0.0 (clang-1<IP_ADDRESS>)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import geant4_pybind
Traceback (most recent call last):
  File "<string>", line 124, in <module>
AttributeError: module '__main__' has no attribute '__file__'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: initialization failed

I think I've traced that to the datainit.py module getting called, and specifically the line:
https://github.com/HaarigerHarald/geant4_pybind/blob/d9c774a04156b1518795bafbd7819a1b8a03f7ea/source/datainit.py#L123
Whilst in general interactive use probably isn't the primary use case, it would be useful to support it. I'm happy to look at ways to fix this, but let me know what you think!

Hi,
thanks, yes of course help and collaboration is always welcome! Also feel free to incorporate this partially or fully into the official bindings.
Regarding the issue, unfortunately I think this is a slight bit more problematic as it prevents imports in jupyter notebooks. I’m still not sure though why it didn’t occur in the jupyter vscode extension that I tested with. However, it should be fixed with 9a1f18d0eb1dc5cb24b01ed7b5fd6c6954927f32 by simply checking a global variable, which is probably the better approach in this case anyways.


Improved readme - added --region, and default to same filename

Small changes to make it a little more friendly.

@andrewrk this would have been helpful... found the flag eventually. Please merge.

@andrewrk thank you! thanks for the project too... it was a pain having to configure mixed environments to support the awscli. This is much cleaner.


Bug in python version of imwrite w/ 16bit JPEG2000

General Info
This is a bug that was fixed in C++ OpenCV (after version <IP_ADDRESS>) about 5 years ago:
https://github.com/opencv/opencv/pull/6417/files
https://answers.opencv.org/question/92899/writing-jpeg-2000-images-with-16-bit/
Since opencv-python <IP_ADDRESS> is build on a much newer version of OpenCV, I don't understand why it still exists now in the python verison.
Expected behaviour
cv2.imwrite(dst_file, pixel_array, [cv2.IMWRITE_JPEG2000_COMPRESSION_X1000, 1000])
pixel_array is a uint16 array.
The image in pixel_array should be written to a 16-bit JPEG2000 file.
Actual behaviour
The resulting JPEG2000 image has a bit debth of 8 bit and is completely black.
Steps to reproduce
Create an image represented in a single-channel uint16 array.
Set Environment Variable OPENCV_IO_ENABLE_JASPER=True
Call imwrite like: cv2.imwrite(dst_file, pixel_array, [cv2.IMWRITE_JPEG2000_COMPRESSION_X1000, 1000])
opencv-python Version: <IP_ADDRESS>

There is no "python version" of OpenCV, Python just calls the C++ code. Open an issue to the OpenCV repository, this repository contains only a build toolchain and I cannot fix OpenCV bugs here.
https://github.com/opencv/opencv/issues


Fixes projects page overlapping

Fixes #1106
Describe the changes you have made in this PR -

Use responsive flexbox to position items in div.

Screenshots of the changes (If any) -
BEFORE

AFTER

Coverage remained the same at 84.266% when pulling 04d116aaf91a5029b82d887ad30c8adf7ea11858 on Nitish145:projects-page-overlapping#1106 into 5b45ce4cb36afad3168c677984fb081dbe91908d on CircuitVerse:master.

@nitin10s @tachyons @aayush-05 reviews please :)

@Nitish145 good work

Will do shortly 🙂

Update the screenshots, please.

Will update sorry for the delay..

We can also change the link colour for "here" to green, it goes with the overall theme.

Sure

@nitin10s @aayush-05 screenshots updated. Reviews please :)

@nitin10s is there something else that needs to be addressed here ?


Change the order of operations: boolean, extractChannel, then sRGB conversion

This small pr moves the boolean(), bandbool(), and extractChannel() operations to before the code that performs sRGB conversion. It doesn't make sense to be able to extract a channel that doesn't appear in the input image. It also doesn't make a lot of sense to perform boolean operations on channels that were implicitly added after the image was loaded. This does raise the somewhat odd potential for colorspace conversion to be performed after a bitwise boolean operation -- perhaps this should be explicitly prevented? It can happen if the input image has a non-sRGB profile.

Coverage remained the same at 99.014% when pulling 9fda4639eb793e17db8f02d800631502e9a0dd60 on mhirsch:order_of_ops_boolean_extractChannel into 2d500554c190f74d24ae27046a6610c6b161ac34 on lovell:master.

Thanks Matt. Might this be considered a breaking change? Should this land in v0.16.0 or v0.15.2?

I can see a circumstance where it might break existing code. The intent is to avoid confusing situations where a boolean operation occurs on a channel that you weren't expecting to exist, or you are able to extract a channel that didn't exist in the input image. So to me the question is whether it is more likely that people run into problems with the code as is, or with the change. Given that we just added these features three or four days ago, it seems unlikely that someone would have already written code to exploit one of the existing corner cases. The overlap between using bitwise boolean operations and working with images that contain a color profile seems like it would be small.
I guess I can see both sides here. Perhaps there's some additional behavior that could be enforced to make this an easier decision? In the end though it doesn't matter much to me which version the change lands in -- whatever you think is best.

Thanks Matt, I agree this has minimal impact - will be in the next point release.


[568] Cloudfront caches all API requests

Trello card URL:
https://trello.com/c/szyBtECp
Changes in this PR:

defaults to 15 minutes
miniumum of 60 seconds to resist DOS attacks or events
expires after a maximum of 24 hours
to test on an environment with basic auth you also need to add the Authorization header to see the hits coming from Cloudfront

Screenshots of UI changes:
Before
HTTP/2 200
content-type: application/json; charset=utf-8
date: Wed, 07 Nov 2018 16:40:07 GMT
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
x-content-type-options: nosniff
x-download-options: noopen
x-permitted-cross-domain-policies: none
referrer-policy: strict-origin-when-cross-origin
x-robots-tag: noarchive
etag: W/"6cbaa8f3928f1a57459fd13ef973df6d"
cache-control: max-age=0, private, must-revalidate
x-request-id: 71319216-af9e-44d3-bc06-f3eaa4de03c1
x-runtime: 4.857703
strict-transport-security: max-age=31536000; includeSubDomains
x-cache: Miss from cloudfront
via: 1.1 ba7014bad8e9bf2ed075d09443ccc4f4.cloudfront.net (CloudFront)
x-amz-cf-id: 5PcjZN2ZE2AJI4T3SxzZZ5ZLInhg7J-1vXgdyK0WBxkKq4t7CpouKQ==

After
Note the x-cache: Hit from cloudfront line.
HTTP/2 200
content-type: application/json; charset=utf-8
date: Wed, 07 Nov 2018 17:05:50 GMT
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
x-content-type-options: nosniff
x-download-options: noopen
x-permitted-cross-domain-policies: none
referrer-policy: strict-origin-when-cross-origin
x-robots-tag: noarchive
etag: W/"6cbaa8f3928f1a57459fd13ef973df6d"
cache-control: max-age=0, private, must-revalidate
x-request-id: df8fdb47-299f-4ae5-ba0e-cbc934653d66
x-runtime: 2.296244
strict-transport-security: max-age=31536000; includeSubDomains
age: 2
x-cache: Hit from cloudfront
via: 1.1 9b873c22fb06a32f8142a90b7071aba9.cloudfront.net (CloudFront)
x-amz-cf-id: kcCuOsRyLJ2Y2I-KeV4WvmtgCy7NI0_p1TwXqNZ4rkbhn30ITg4uow==

Next steps:

[x] Terraform deployment required?

[ ] New development configuration to be shared?

 Configure Cloudfront caching


Dependency time 0.1.44 is vulnerable to CVE

We are vulnerable to a potential segfault via the time crate, caused by chrono using an old version of time.
Link to CVE
cargo audit:
Crate:     time
Version:   0.1.44
Title:     Potential segfault in the time crate
Date:      2020-11-18
ID:        RUSTSEC-2020-0071
URL:       https://rustsec.org/advisories/RUSTSEC-2020-0071
Solution:  Upgrade to >=0.2.23
Dependency tree:
time 0.1.44
└── chrono 0.4.22
    ├── systemstat 0.1.12
    │   └── rust-motd 0.3.0
    ├── rust-motd 0.3.0
    └── docker-api 0.9.2
        └── rust-motd 0.3.0

Dependency is through chrono, which according to this, no longer uses the portion of time with the vulnerability for chrono versions > 0.4.20.


cask uninstall script: allow tilde expansion to '$HOME'

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[x] Have you written new tests for your changes? Here's an example.

[ ] Have you successfully run brew typecheck with your changes locally?
[x] Have you successfully run brew tests with your changes locally?

Changes Summary
Allow Casks to use uninstall script path with ~ as an alias for HOME.
Originally discussed here: https://github.com/Homebrew/homebrew-cask/issues/99043#issuecomment-780233940
Notes on Checks
Cannot run brew typecheck on M1 Mac
Similarly, 1 failure in brew tests due to Rosetta layer
expected "macOS 11.2, Rosetta, non-/usr/local" to include "macOS 11.2, non-/usr/local"

Before Feature: New Testcase result --only cask/cmd/uninstall
Finished in 14.62 seconds (files took 1.99 seconds to load)
11 examples, 1 failure

Failed examples:

rspec ./test/cask/cmd/uninstall_spec.rb:103 # Cask::Cmd::Uninstall when Casks use script path with `~` as `HOME` can still uninstall them

11 examples, 1 failure

Took 17 seconds
Tests Failed

After Feature: New Testcase result --only cask/cmd/uninstall
==> Downloading file:///usr/local/Homebrew/Library/Homebrew/test/support/fixtures/cask/MyFancyApp.zip
==> Installing Cask with-uninstall-script-user-relative
==> Moving App 'MyFancyApp.app' to '/private/tmp/homebrew-tests-20210328-26019-oiomvj/MyFancyApp.app'
🍺  with-uninstall-script-user-relative was successfully installed!
==> Uninstalling Cask with-uninstall-script-user-relative
==> Running uninstall script ~/MyFancyApp.app/uninstall.sh
==> Purging files for version 1.2.3 of Cask with-uninstall-script-user-relative

...

Finished in 15.68 seconds (files took 2 seconds to load)
11 examples, 0 failures

11 examples, 0 failures

Took 17 seconds

Thanks so much for your first contribution!  You rock, @cho-m!


Support for startOf, endOf #184

Added amStartOf and amEndOf filter with test case and updated README
Issue: https://github.com/urish/angular-moment/issues/184

Thanks!


What can cause this error? Having trouble with repro

Exception in template helper: TypeError: Cannot read property 'apply' of undefined
    at Object.helpers.(anonymous function) (http://localhost:3000/packages/manuel_viewmodel.js?0987c5ffb886321d8e3826a81f1d1f519eeb33f4:212:66)
    at http://localhost:3000/packages/blaze.js?9391df93ba5076c2cfc61ee68724eb79b65f00d9:2986:16
    at http://localhost:3000/packages/blaze.js?9391df93ba5076c2cfc61ee68724eb79b65f00d9:1650:16
    at http://localhost:3000/packages/blaze.js?9391df93ba5076c2cfc61ee68724eb79b65f00d9:3038:66
    at Function.Template._withTemplateInstanceFunc (http://localhost:3000/packages/blaze.js?9391df93ba5076c2cfc61ee68724eb79b65f00d9:3671:12)
    at http://localhost:3000/packages/blaze.js?9391df93ba5076c2cfc61ee68724eb79b65f00d9:3037:27
    at Object.Spacebars.call (http://localhost:3000/packages/spacebars.js?1aedcc2aa3ae9ff5d860d73516110cedd77c033e:167:18)
    at http://localhost:3000/app/client/lib/fvpUX/element/wrapper/container/template.container.js?6ca53d0b543ba332fee5a0c6c96976ace228d3fd:8:22
    at .<anonymous> (http://localhost:3000/packages/blaze.js?9391df93ba5076c2cfc61ee68724eb79b65f00d9:2674:44)
    at http://localhost:3000/packages/blaze.js?9391df93ba5076c2cfc61ee68724eb79b65f00d9:1872:20

Hard to say. My first thought is that you might be using a (weird?) VM property from blaze ({{ theProp }}) and Blaze calls it before the view model has everything it needs.
It's next to impossible without a repro.

That's what I thought, and it seems to be that exact reason...I'll try to find an {{ unWeird }} lol

Closing this one for the moment. Feel free to reopen it at a later point.


Login through github does not seem to work

Hello!
I accepted to connect through GitHub, but cannot seem to be able to log in. I stay on the same login page and there is no hint in the console or network activity in the browser. Github responds with 302 Found, but Onramp stays the same, not logged in.
Is there an additional step I need to do or is this something that needs an update?
Thanks!

Hey @attisimon! Sorry for the delay; I haven't been able to reproduce your issue but would love to make sure we can help you with it. Let me know if it's still persisting for you!

Hey @mattstauffer!
Only today I got to check this again and it still happens.
What I did today was this:

I was already logged into GitHub on this browser

I went to https://onramp.dev/en/login and clicked on "Login or Register with :octocat:"

the pages seems to briefly reload, but nothing else happens (there is not error in the console log)

then I logged out of GitHub

I went to https://onramp.dev/en/login and clicked on "Login or Register with :octocat:"

the page redirected to GitHub, asking me to login and then to approve the authorization

I am redirected back to the login page, seeing the login form, just as before

clicking on "Login or Register with :octocat:" will briefly reload the page, but I am not logged in

Hi @attisimon!
I am also having trouble recreating this bug. Can you tell me what browser & version you are using as well as your OS? Thanks!

@attisimon Thanks so much for your patience. Would you mind trying again? We added a little error notification that you hopefully will see when it fails, and also added additional logging so we can try to get to the core of the issue. Thanks!!

Hi @mattstauffer!
I have tested again, using Google Chrome on Linux, Version 125.0.6422.141 (Official Build) (64-bit).
The behavior is the same. I have emptied everything from the cache before testing.
The odd thing is that there is no clue in the console about what is happening.
There is a recording further down. After stopping the recording, I also checked the network tab, nothing strange there either.
Screencast_20240604_142945.webm

@attisimon I think we've fixed it finally? Thank you so much for the video!! @sperelson we tested it a bunch of times and couldn't reproduce it, but after testing it in an incognito browser we were finally able to reproduce it and it was indeed the missing slash in the GITHUB_REDIRECT_URL. Thank you so much for your investigation!

@sperelson haha I saw that error, and fixed it. Sorry about that! https://github.com/tighten/onramp/commit/f19089f64b33fe6a60499e34d307ff114ad83a29
Glad to see you were able to log in, and I look forward to meeting you! Make sure you get a Tighten pin from me--I owe you that at the very minimum for your help here!

@mattstauffer , I have cleared everything and tested again.
I am redirected to GitHub, sign in, authorize, then redirected back to onramp.dev and get this error:

The same error appears on every subsequent click on the login button.

Guys, I was now able to finish the process of registering and logging in with my GitHub account. From my point of view this is fixed. Thanks everyone!

Fantastic. @attisimon and @sperelson thank you so much for helping us debug this issue!!


Add GitVersion

Adds GitVersion
Removes RunTool

Replaced with calls to DotNetCoreX()

Modified how test assets are created to utilize DoesForEach

I'm actually shocked that this worked on the first try.  Only the mac build is currently failing (damn spastic thing)

I was thinking Continuous deployment, because what the goal here is to push packages to a azure blob storage for testing purposes.

Right now this change seems to extend the mac builds so long that they cannot complete in a timely manner.  I'll look at the reducing the logging verbosity to see if that helps.

@mholo65 running into a strange issue with a few cake tests failing for some reason.
https://travis-ci.org/OmniSharp/omnisharp-roslyn/jobs/318197803
Errors I'm seeing
 OmniSharp.Cake.Tests.UpdateBufferFacts.ShouldSupportIncrementalChanges [FAIL]

      System.InvalidOperationException : Service not initialized.

      Stack Trace:

          at OmniSharp.Cake.Services.CakeScriptService.Generate (Cake.Scripting.Abstractions.Models.FileChange fileChange) [0x0000f] in <04adc11cce8d4bb3bbdfe7fbfc5864d3>:0

          at OmniSharp.Cake.Services.RequestHandlers.Buffer.UpdateBufferHandler+<Handle>d__3.MoveNext () [0x0016f] in <04adc11cce8d4bb3bbdfe7fbfc5864d3>:0

        --- End of stack trace from previous location where exception was thrown ---

          at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at System.Runtime.CompilerServices.TaskAwaiter`1[TResult].GetResult () [0x00000] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at OmniSharp.Cake.Tests.UpdateBufferFacts+<ShouldSupportIncrementalChanges>d__5.MoveNext () [0x001a3] in <bb1b40d88bd24f2bac2223612db1bb4d>:0

        --- End of stack trace from previous location where exception was thrown ---

          at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at System.Runtime.CompilerServices.TaskAwaiter.GetResult () [0x00000] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

        --- End of stack trace from previous location where exception was thrown ---

          at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at System.Runtime.CompilerServices.TaskAwaiter.GetResult () [0x00000] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

        --- End of stack trace from previous location where exception was thrown ---

          at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

          at System.Runtime.CompilerServices.TaskAwaiter.GetResult () [0x00000] in <c9f8153c41de4f8cbafd0e32f9bf6b28>:0

I don't quiet understand how things could be broken, but that appears to the be issue with mac builds only though.

@mholo65 nevermind I think I found the issue, it was a ID10T error on my part.

@david-driscoll, the error is referring to cake.bakery not installed. It should be installed during test-asset preparation. Are all tests failing?

yay it worked!


Why not licensing youtube-dl to a free software license

Why not licensing youtube-dl to a free software license like the GNU GPL v.3 or later.
I'm afraid that the Google, YouTube, SoundCloud, and others big corporations shutdown this project and all the associated forks with court case with that order.
With the GNU GPL v.3 the project is protect by the four freedoms of free software.
If I was developing or owning this project I for sure license under the GNU GPL v.3 license or later.
This project is very important to me because I'm free software fan and user and I do not want the project to close, I want that the project to be protected against big corporations of proprietary software!

youtube-dl is realeased into the public domain (see the LICENSE, which is a free license (and please don't start a discussion about which license is truly free). If you don't trust me, read the GNU webpage: https://www.gnu.org/licenses/license-list.html#PublicDomain

I'm afraid that the Google, YouTube, SoundCloud, and others big corporations shutdown this project and all the associated forks with court case with that order.
With the GNU GPL v.3 the project is protect by the four freedoms of free software.

I don't really know how using a different license would give more protection in that hypothetical situation, but I'm not a lawyer.

Public Domain is like give up of duties and rights of a project, is dangerous.
Legally, the free software licenses are the best protect, because in the past I had some problems with license and copyright and when software lawyers saw that my project was licensed under GNU GPL v.3 they give up of a court case.

Again: public domain is free software (see the GNU page about free licenes).
If you really want to propose a switch to GPL (note that not all project use v.3, some have decided to stay with v.2), open a new issue and give a detailed explanation of the benefits and problems that would solve, we can discuss it and we may choose to switch (I warn you: I would probably vote against it, but others may like it).


Remove possibly confusing period.

Maybe just me and my monitor's contrast, but I thought the desired string was 'pizza is alright.' when I ran through this exercise. I was debating moving the period into the string, but figured this might be more clear.
Also removed one trailing whitespace.
Please feel free to tell me this is pointless and that most people should notice the color difference :smiley:, or if you have a better suggestion!

Don't think this will cause any problems removing it, and hopefully it will help future people having your issue :)


CORS middleware block request to the same domain

It looks, that CORS middleware is blocking request to the same origin. For example:
following request:
GET /api HTTP/1.1
Host: <IP_ADDRESS>:8282
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0
Accept: application/json
Accept-Language: pl,en-US;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate
Referer: http://<IP_ADDRESS>:8282/doc/index.html?url=/swagger.yaml&defaultModelsExpandDepth=0
origin: http://<IP_ADDRESS>:8282
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

returns:
HTTP/1.1 403 Forbidden
Date: Sat, 31 Aug 2019 20:49:17 GMT
Content-Length: 0

Maybe I'm wrong, but I think, that request to the same origin (http://<IP_ADDRESS>:8282 in this case) should be always permitted (without additional config).

Can you please post code, @PawelJ-PL? I'd like to try to reproduce it.

After running sbt run on https://github.com/kevinmeredith/http4-cors-issue-2831/tree/one, I then ran curl's:
# localhost
$curl -vs localhost:8080/foobar
*   Trying ::1...
* TCP_NODELAY set
* Connection failed
* connect to ::1 port 8080 failed: Connection refused
*   Trying <IP_ADDRESS>...
* TCP_NODELAY set
* Connected to localhost (<IP_ADDRESS>) port 8080 (#0)
> GET /foobar HTTP/1.1
> Host: localhost:8080
> User-Agent: curl/7.54.0
> Accept: */*
>
< HTTP/1.1 200 OK
< Content-Type: text/plain; charset=UTF-8
< Date: Mon, 02 Sep 2019 02:33:15 GMT
< Content-Length: 11
<
* Connection #0 to host localhost left intact
hello world$

# <IP_ADDRESS>
$curl -vs <IP_ADDRESS>:8080/foobar
*   Trying <IP_ADDRESS>...
* TCP_NODELAY set
* Connected to <IP_ADDRESS> (<IP_ADDRESS>) port 8080 (#0)
> GET /foobar HTTP/1.1
> Host: <IP_ADDRESS>:8080
> User-Agent: curl/7.54.0
> Accept: */*
>
< HTTP/1.1 200 OK
< Content-Type: text/plain; charset=UTF-8
< Date: Mon, 02 Sep 2019 02:33:29 GMT
< Content-Length: 11
<
* Connection #0 to host <IP_ADDRESS> left intact
hello world

I was not able to reproduce it based on my understanding of the problem. Please let me know, @PawelJ-PL, if I'm missing anything in my test.

It's my mistake. I was thinking, that browser doesn't set Origin header in requests to the same domain (only for cross origin requests), but now I've realized, that's not true.
I think You can close the issue and I'm sorry for bothering You

It was no bother to me, @PawelJ-PL! I believe you can close it if it's not an issue since you opened it. Or, could you please close, @rossabaker @ChristopherDavenport? Thanks


Reading serial data from arduino on raspberry pi is breaking the data

Summary of Problem
I'm trying to send data from an arduino uno to raspberry pi 3B using serial over USB.
Arduino is sending a simple string "Hello" but the rpi receives it like this:
Open connection
He
llo
H
ello
Hell
o
He
llo
H
ello
(...)
I would expect it to be like this:
Hello
Hello
Hello
(...)
I've searched for this issue but I don't seem to get anyone with the exact same error. Increasing baudRate seems to improve it, and sometimes I get a full "Hello", but even so it's not consistent.
It seems a parser problem, but I can confirm that the buffer returns the CR LF (0d 0a). However, the buffer packages seem to have different sizes:
<Buffer 48 65>
<Buffer 6c 6c 6f 0d 0a>
<Buffer 48>
<Buffer 65 6c 6c 6f>
<Buffer 0d 0a>
<Buffer 48 65 6c 6c>
<Buffer 6f 0d 0a>
<Buffer 48 65>
<Buffer 6c 6c 6f 0d>
<Buffer 0a>
<Buffer 48>
<Buffer 65 6c 6c 6f>
Code to Reproduce the Issue
The nodejs Code:
const SerialPort = require("serialport");

var myPort = new SerialPort ("/dev/ttyACM0", {
        baudRate: 9600,
        parser: new SerialPort.parsers.Readline("\r\n"),
})

myPort.on('open', onOpen);
myPort.on('data', onData);

function onOpen()
{
        console.log("Open connection");
;}

function onData(data)
{
        console.log(data.toString('UTF8'));
}

The Arduino code:
void setup() {
  Serial.begin(9600);
}

void loop() {
  Serial.println("Hello");
  delay (1000);
}

Versions, Operating System and Hardware

SerialPort@: 7.0.2
Node.js: (not sure :(...new to this)
Linux (raspbian)
Raspberry pi 3B

@jcalmeida Have you tried the readline.js example? https://github.com/node-serialport/node-serialport/blob/%40serialport/bindings%402.0.2/packages/serialport/examples/readline.js

@jcalmeida Have you tried the readline.js example? https://github.com/node-serialport/node-serialport/blob/%40serialport/bindings%402.0.2/packages/serialport/examples/readline.js
Edited the example to match your configuration:
// Use a Readline parser

const SerialPort = require('serialport')
const parsers = SerialPort.parsers

// Use a `\r\n` as a line terminator
const parser = new parsers.Readline({
  delimiter: '\r\n',
})

const port = new SerialPort('/dev/ttyACM0', {
  baudRate: 9600,
})

port.pipe(parser)

port.on('open', () => console.log('Port open'))

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

The SerialPort constructor does not take a parser option.

Simple as that. It works! Thanks a lot!
I've search for a lot of online examples, and the parser was always on the constructor. I couldn't see the constructor definition in the API page and didn't realize there was a Readline example....
Thanks a lot for pointing me to it. I spent more time on a simple issue that I'd like to admit! :)

No worries. We’re working to make the getting started experience better, so any feedback is helpful. Good luck on your project! :+1:


Several questions about the communication between server and worker

Your work is really awesome, and I have learn a part of the project, but might not understand it very well.
I have several questions about the communication between server and worker as follows.

It seem that servers will not communicate with each other? Do the workers determine from which server to pull/push the parameters?
Why you design the structure "Table"? It seems that parameters data can be consisted of "Rows".

Does a whole table should be stored in a single server? There is not intersection between different servers?
When will we need to create multiple "Tables"?

Thank you so much.

Hi Yitan,
It's true that different sever will not communicate with each other for the reason that the parameter are not duplicated in each server. The workers didn't have to determine which server should pull/push to.
the table is a logic unit for some algorithms. the actual process unit is an row, which will store in different servers ( if you have).

Hi Haiwei,
Thank you for your reply.

Hi Haiwei,
Thank you for your reply.


textfield_perf__timeline_summary benchmarks all regressed / need baselining

Dashboard went from no metrics to read at commit https://github.com/flutter/flutter/pull/51938.

Dropping TODAY label, but we still need benchmarks here.

The benchmarks look fine to me now and this issue is old. I am closing this.


Create pt-pt.js

File was missing for correct 'moment' translation while using pt-pt language.
Improved translation over previous base file (created by Jefferson - https://github.com/jalex79)

Note: pt.js may now be obsolete since Portuguese is now translated through pt-pt or pt-br.

I can not accept your pull request.
The name of the file in an external library should not be changed.
I will fix it on my side.
If you want to fix the translation, just fix the pt.js file.

Did not know that, thanks.

Quick question, should I change:
    return moment.lang('pt', {
to
    return moment.lang('pt', {
or just leave it as is (pt)?

In your case (fast fix), you can rename the file to pt-pt.js
This should help.

I know. But I'm asking for the commit on pt.js.
I have a few fixes to commit, and I was wondering if I should also change the lang code returned or keep it as it is (pt).


cluster: Distinguish between missing and broken provider

Currently, when cluster connects to a cloud provider, if it returns an error, we swallow it silently.  This is to avoid annoying warnings for cloud providers the user hasn't setup credentials for.
Unfortunately, when I was running GCE I got a real error that was swallowed:
DEBUG [Jun  3 16:06:46.723] failed to start up gce network           error=googleapi: Error 400: Invalid value for field 'resource.name': 'Demo'. Must be a match of regex '(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)', invalid

To notice this error, I had to turn on debug logging, which isn't for usability.  It would be much better if we could somehow distinguish between "this provider isn't configured" and "I had an error connecting".  The former should be silent, the latter should be logged.  Perhaps, we need some "providerExists" function or something.

Migrated to https://trello.com/c/IBVSNygg


Is it still able to use on macos 15.1 beta 2?

可以

Maybe.
I rarely use Mac afterwards, so I have hardly paid attention to this project. Sorry for the long wait.
Check the repo homepage for the latest available method.


⚠ Mobitopup has degraded performance

In 1549835, Mobitopup (https://napcard.voz.tech) experienced degraded performance:

HTTP code: 200
Response time: 18834 ms

Resolved: Mobitopup performance has improved in 60a212e.


Typo "Jupyter notebooks"→"Jupyter Notebooks"

https://docs.microsoft.com/en-us/azure/hdinsight/spark/apache-spark-jupyter-notebook-kernels

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

@hyoshioka0128 Thanks for contributing to the documentation. This editorial revision isn't correct, so we'll close the PR. Because Jupyter Notebook is the name of an application, referring to "a Jupyter Notebook," for example, isn't correct. Thanks.


Return a 503 if the authenticator fails

LGTM

LGTM. Wait for the integration tests to pass.
Please cherry pick on 1.2 branch


[Diagnostics & Tests] Add diagnostics for detecting invalid conversions from FP to Ints.

Add test cases for checking the correctness of the diagnostics.

@swift-ci Please smoke test

Looks good - but as Erik said: please add some tests in test/SILOptimizer/constant_propagation.sil

@swift-ci please smoke test

@eeckstein Thanks for the comments. I have added some SIL tests now (test/SILOptimizer/diagnostic_constant_propagation_floats.sil) and improved error reporting.

Much improved, thanks very much!

@eeckstein I see. Thanks for the clarification.  I will add them.
Btw, I guess the SIL tests I have currently are also useful to test diagnostics when AST information is not available. (The AST information is used to recover the source literal and type).  So, I would like to keep this too, if it is okay.

@swift-ci Please smoke test

@eeckstein Thanks for the comments. I have added some SIL tests that checks the correctness of the folded program obtained after constant propagation. The tests are available in the new file: test/SILOptimizer/constant_propagation_floats.sil

@swift-ci Please test merge

@swift-ci  Please test and merge

@swift-ci Please test and merge

@swift-ci Please test and merge


implement hammer slide algorithm in rust without simd feature

initial commit for #115

Ideally, we could reuse the Aggregator interface from uwheel otherwise it will be hard to integrate. Also, we benefit from having access to combine_simd(slice) implementations out of the box.
One way that might work is to import uwheel into hammerslide. The other is that we move the aggregator interface and impls into its own crate uwheel-aggregatorand use that within hammerslide.

Overall looks good! The clippy and also no_std checks are failing. Additionally, I added some comments


Retevis RT-3 stays in programming mode on error

This problem is pretty easy to reduplicate. First generate a contact list for TYT MD-380 and then try to update that into the radio:
$ dmrconfig -u -t contacts.csv
--- Send GETSTATE [1]
--- Recv 02
--- Send DNLOAD [2] 91-01
--- Send GETSTATUS [6]
--- Recv 00-e8-03-00-04-00
--- Send GETSTATE [1]
--- Recv 03
--- Send ABORT
--- Send GETSTATE [1]
--- Recv 02
--- Send DNLOAD [2] a2-01
--- Send GETSTATUS [6]
--- Recv 00-32-00-00-04-00
--- Send GETSTATE [1]
--- Recv 03
--- Send ABORT
--- Send GETSTATE [1]
--- Recv 02
--- Send UPLOAD [64]
--- Recv 44-52-37-38-30-00-ff-ff-ff-ff-ff-ff-ff-ff-ff-ff-20-02-ff-33-00-40-00-48-ff-ff-ff-ff-ff-ff-ff-ff-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
--- Send GETSTATUS [6]
--- Recv 00-00-00-00-02-00
--- Send DNLOAD [5] 21-00-00-00-00
--- Send GETSTATUS [6]
--- Recv 00-32-00-00-04-00
--- Send GETSTATE [1]
--- Recv 03
--- Send ABORT
--- Send GETSTATE [1]
--- Recv 02
Connect to TYT MD-380.
TYT MD-380 does not support CSV database.

The radio stays in the programming mode after the error and requires a power off. Could the error handling safely add the exit from the programming mode or is the power off more beneficial if a more grave error would occur?

Fixed in 7b1d6aa82aa9df25674fe623a374e24a10889439.
Thank you for bug report.
Actually it's possible to implement writing CSV list for RT3/MD380. I'm pretty sure this radio has the same format of callsign database as UV380. But it's probably located at different address in memory. Need to figure out values of CALLSIGN_START, CALLSIGN_FINISH and CALLSIGN_OFFSET (see uv380.c and routine uv380_write_csv()).
Jari, can you please help me with this? I have a python script that reads the whole 16 Mbytes of internal radio memory. I can compare it with memory dump of my uv380, and find correct addresses for rt3/md380. Here is the script: https://raw.githubusercontent.com/wiki/sergev/dmrconfig/scripts/md380-read-16mb.py

You will need to install pyusb: "pip install pyusb".
Then run "./md380-read-16mb.py rt3.bin" - it will dump the memory from radio into binary file rt3.bin.

BTW, there exists an easier way to get the latest list of DMR callsigns. No need for Digital Contacts Wizard. Just use:
wget https://www.radioid.net/static/users.csv

Does the radio have a separate user database or would the codeplug be flooded with those contacts? That file has 112 438 lines with 721 grepped Finnish lines now.
The radio exits the programming mode cleanly when this error happens:
$ dmrconfig -u -t contacts.csv
--- Send GETSTATE [1]
--- Recv 02
--- Send DNLOAD [2] 91-01
--- Send GETSTATUS [6]
--- Recv 00-e8-03-00-04-00
--- Send GETSTATE [1]
--- Recv 03
--- Send ABORT
--- Send GETSTATE [1]
--- Recv 02
--- Send DNLOAD [2] a2-01
--- Send GETSTATUS [6]
--- Recv 00-32-00-00-04-00
--- Send GETSTATE [1]
--- Recv 03
--- Send ABORT
--- Send GETSTATE [1]
--- Recv 02
--- Send UPLOAD [64]
--- Recv 44-52-37-38-30-00-ff-ff-ff-ff-ff-ff-ff-ff-ff-ff-20-02-ff-33-00-40-00-48-ff-ff-ff-ff-ff-ff-ff-ff-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
--- Send GETSTATUS [6]
--- Recv 00-00-00-00-02-00
--- Send DNLOAD [5] 21-00-00-00-00
--- Send GETSTATUS [6]
--- Recv 00-32-00-00-04-00
--- Send GETSTATE [1]
--- Recv 03
--- Send ABORT
--- Send GETSTATE [1]
--- Recv 02
Connect to TYT MD-380.
TYT MD-380 does not support CSV database.
Close device.
--- Send DNLOAD [2] 91-05
--- Send GETSTATE [1]
--- Recv 02
--- Send GETSTATUS [6]

This may not matter if you only use a couple of first fields from the CSV file anyway, but I got different formats from those two sources. The wizard responded with:
2442017,OH2K,Kauniainen,,Uusimaa,,Finland

while the direct link says:
2442017,OH2K,Kauniainen ,,,Finland,Club

Is it possible that TYT MD-380 and alike would use different data fields for contacts?

Are the CSV Contacts eventually be going to be assimilated into the codeplug contacts? If they are, they might begin at 0000ec20:
0000ec20  46 00 69 00 6e 00 6c 00  61 00 6e 00 64 00 00 00  |F.i.n.l.a.n.d...|
0000ec30  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
0000ec40  01 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
0000ec50  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|

because Finland is the first contact in my RT-3 codeplug.  And it seems to have some kind of non-visible values. Maybe CALLSIGN_START is f4 00 00 c1 or something similar? Hope this helps.

Is it possible that TYT MD-380 and alike would use different data fields for contacts?

As I can see from uv380, the data fields are just being printed on the screen, one field per line. So the format of fields does not matter much, as long as the information is the same.

That file has 112 438 lines with 721 grepped Finnish lines now.

Jari,
RT3 supports up to 1000 contacts in the codeplug. You can easily format the configuration script (device.conf) and add 721 records to the Contacts table. Then use the following command to configure the radio with new data:
dmrconfig -c your-file.conf

I found out that there is still a similar staying in the programming mode problem when the white spaces on the contact list aren't correct.
$ dmrconfig -c device.conf
Connect to TYT MD-380.
Read device: ######## done.
Last Programmed Date: 2018-11-04 00:53:26
CPS Software Version: V=0.09
Write codeplug to file 'backup.img'.
Read configuration from file 'device.conf'.
Invalid line: '359 OH2K_Kauniainen Private 2442017 -'

And then the radio stays in the programming mode without exiting it.


Ensure that PDFThumbnailView.draw is able to handle RenderingCancelledException correctly (PR 8157 follow-up)

In PR ¤8157, I embarrassingly enough forgot to change pdf_thumbnail_view.js to match the changes made to pdf_page_view.js; see pdf_page_view.js#L426-L431.

/botio-linux preview

Thank you for the follow-up!


Introducing Ockam Guru on Gurubase.io

Hello team,
I'm the maintainer of Anteon. We have created Gurubase.io with the mission of building a centralized, open-source tool-focused knowledge base. Essentially, each "guru" is equipped with custom knowledge to answer user questions based on collected data related to that tool.
I wanted to update you that I've manually added the Ockam Guru to Gurubase. Ockam Guru uses the data from this repo and data from the docs to answer questions by leveraging the LLM.
In this PR, I showcased the "Ockam Guru", which highlights that Ockam now has an AI assistant available to help users with their questions. Please let me know your thoughts on this contribution.
Additionally, if you want me to disable Ockam Guru in Gurubase, just let me know that's totally fine.

Hi again,
Have you had a chance to check this out?
Additionally, I’d like to update you on the release of the Maintainer Panel feature on Gurubase. With this panel, you can add, remove, or update data sources, as well as change the logo and more. You can find the details here.
In the near future, I’m planning to include analytics insights in this panel, such as the number of questions asked, the most frequently asked ones, and more. I’ll be sure to update this thread once it’s available. However, in case I miss it, I highly recommend joining our Discord channel to stay updated.
If you’d prefer that I don’t update this thread anymore, please let me know.


[Event Request] Table 1003 "Job Planning Line"

Dear ALAppExtensions team,
Through this issue we would like to request event publisher which would be called as follows from be added to Table 1003 "Job Planning Line" with the following signature:
    [IntegrationEvent(false, false)]
    local procedure OnBeforeConvertAmountToFCYUnitCost(var JobPlanningLine: Record "Job Planning Line"; xJobPlanningLine: Record "Job Planning Line"; Item: Record Item; var RetrievedCost: Decimal)
    begin
    end;

with VAR parameter JobPlanningLine, RetrievedCost
which would be called as follows at the end of the procedure from UpdateUnitCost:
    local procedure UpdateUnitCost()
    var
        RetrievedCost: Decimal;
        IsHandled: Boolean;
    begin
        IsHandled := false;
        OnBeforeUpdateUnitCost(Rec, IsHandled);
        if IsHandled then
            exit;

        GetJob;
        if (Type = Type::Item) and Item.Get("No.") then
            if Item."Costing Method" = Item."Costing Method"::Standard then
                if RetrieveCostPrice(CurrFieldNo) then begin
                    if GetSKU then
                        "Unit Cost (LCY)" := Round(SKU."Unit Cost" * "Qty. per Unit of Measure", UnitAmountRoundingPrecision)
                    else
                        "Unit Cost (LCY)" := Round(Item."Unit Cost" * "Qty. per Unit of Measure", UnitAmountRoundingPrecision);
                    "Unit Cost" := ConvertAmountToFCY("Unit Cost (LCY)", UnitAmountRoundingPrecisionFCY);
                end else
                    RecalculateAmounts(Job."Exch. Calculation (Cost)", xRec."Unit Cost", "Unit Cost", "Unit Cost (LCY)")
            else
                if RetrieveCostPrice(CurrFieldNo) then begin
                    if GetSKU then
                        RetrievedCost := SKU."Unit Cost" * "Qty. per Unit of Measure"
                    else
                        RetrievedCost := Item."Unit Cost" * "Qty. per Unit of Measure";
                    // >>>> New >>>>>>>>>>>>>>>>
                    OnBeforeConvertAmountToFCYUnitCost(Rec, xRec, Item, RetrievedCost);
                    // <<<< New <<<<<<<<<<<<<<<<
                    "Unit Cost" := ConvertAmountToFCY(RetrievedCost, UnitAmountRoundingPrecisionFCY);
                    "Unit Cost (LCY)" := Round(RetrievedCost, UnitAmountRoundingPrecision);
                end else
                    RecalculateAmounts(Job."Exch. Calculation (Cost)", xRec."Unit Cost", "Unit Cost", "Unit Cost (LCY)")
        else
            RecalculateAmounts(Job."Exch. Calculation (Cost)", xRec."Unit Cost", "Unit Cost", "Unit Cost (LCY)");
    end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 49264.


main: always call InitUart, get rid of ECHO_UART

why always init uart? It's not wired to anything on the f0 module, so why init it?

On f0_module InitUart becomes empty (and optimized out) because no UART_DEBUG and no TS_PRIMARY_SERIAL/UART_PORT are defined.
So ECHO_UART just adds unnecessary complexity.

ah, fair enough
that stuff should go in the description :)


app:mergeDebugResources FAILED

I am new to programming and not very much familiar with gradle. Developed a simple app and am having issue debug and run. Here is the error below
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':app:mergeDebugResources'.

Could not resolve all files for configuration ':app:_internal_aapt2_binary'.
Could not resolve com.android.tools.build:aapt2:3.6.2-6040484.
Required by:
project :app
No cached version of com.android.tools.build:aapt2:3.6.2-6040484 available for offline mode.
No cached version of com.android.tools.build:aapt2:3.6.2-6040484 available for offline mode.

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

Get more help at https://help.gradle.org

BUILD FAILED in 1s
5 actionable tasks: 1 executed, 4 up-to-date

I'm having the same problem, please if you know how to resolve this please share

Please disable offline mode.

Perfect, it worked well

Please how did you disable offline mode?

I had the same error , I disabled the offline mode (Android Studio 4.1.1) and the problem disappear, I am from Syria so I used vpn , if you are in country where android studio website blocked u have to use vpn .
I clicked file -> setting -> plug-ins -> gradle -> made shortcut for offline mode and disable it and that works for me (hope any one can benefit)

I had the same error after adding a different app icon to my project. After I reverted back to the older app icon everything worked fine for me again!

Please disable offline mode.

How do i disable offline mode?

I had the same error after adding a different app icon to my project. After I reverted back to the older app icon everything worked fine for me again!

This worked for me. Thanks


Some badges in long project descriptions on PyPI return HTTP 404

Describe the bug

$sbj. It looks like this happens to badges with emojis in URLs.
In my case, it's GitHub Actions CI/CD workflow emojis.
Expected behavior

Badge displayed.
To Reproduce

It's visible here: https://pypi.org/project/ansible-collections.python.dist.boo/.
The corresponding GitHub page: https://github.com/webknjaz/ansible-collection-python-dist-boo.
The build process embeds README.rst as-is. You can see that the badge is visible on GitHub but on PyPI the corresponding HTTP request visible in DevTools returns 404.
I have another project where GitHub badges work (https://pypi.org/project/octomachinery/) and the only difference I see is emojis in the URL.
I'd try to debug it myself but I haven't found where the code that is used to cache images lives.
My Platform
N/A
Additional context

N/A

Images are proxied via https://github.com/pypa/warehouse-camo, so the issue is likely in its handling of URLs.

Yeah, it's because the emoji are not URL-encoded:
_http_client.js:139
      throw new ERR_UNESCAPED_CHARACTERS('Request path');
      ^

TypeError [ERR_UNESCAPED_CHARACTERS]: Request path contains unescaped characters
    at new ClientRequest (_http_client.js:139:13)
    at request (https.js:305:10)
    at Object.get (https.js:309:15)
    at process_url (/Users/dustiningram/git/pypa/camo/server.js:139:25)
    at Server.<anonymous> (/Users/dustiningram/git/pypa/camo/server.js:322:18)
    at Server.emit (events.js:210:5)
    at parserOnIncoming (_http_server.js:742:12)
    at HTTPParser.parserOnHeadersComplete (_http_common.js:111:17) {
  code: 'ERR_UNESCAPED_CHARACTERS'
}

Using https://github.com/webknjaz/ansible-collection-python-dist-boo/workflows/Publish%20Python%20%F0%9F%90%8D%20distributions%20%F0%9F%93%A6%20to%20PyPI%20and%20TestPyPI/badge.svg instead should work.

Closing this as there's not really much we can do here, but thanks for the report.


CI: ignore Rails environment switches for db tasks

When switching between the default_env and test Rails environments, the Rails database tasks will raise
ActiveRecord::EnvironmentMismatchError.
Rails can either be explicitly told that the environment being switched to is expected via a task that sets the target environment, or the check itself can be disabled via an environment variable.
For now we are opting for the latter with
ENV['DISABLE_DATABASE_ENVIRONMENT_CHECK'].

resolves #2038


[feature] Get-ExcelSheetInfo

A few lines will bring a plenitude
...
    param(
	...
        $excelpackage
    )
    process {
        if ($excelpackage) {
            $workbook  = $excelpackage.Workbook
            if ($workbook -and $workbook.Worksheets) {
                $workbook.Worksheets |
                    Select-Object -Property name,index,hidden,@{
                        Label      = 'Path'
                        Expression = {$Path}
                    }
            }
            return
        }
	...

Thanks, makes sense, would you be up for adding that in and adding/updating tests?

I dont know how to add it in test. :-(


Pin python-multipart to v0.0.12

Summary
Just-released version of python-multipart v0.0.14 breaks the FastAPI router.
See https://github.com/Kludex/python-multipart/issues/173
QA Instructions

pip install from main without this commit
try to run invokeai-web, observe failure to launch
pip install from this commit, or pip install python-multipart==0.0.12
run the app, observe success

Merge Plan
Merge ASAP
Checklist

[x] The PR has a short but descriptive title, suitable for a changelog

The maintainer has already yanked the offending release; this is no longer needed.