Change UID

Step 1: Describe your environment

OS version: Windows 10
Arduino IDE version: 1.8.13
MFRC522 Library version: Master
Arduino device: UNO
MFRC522 device: RFID RC522

Step 2: Describe the problem
I write the UID in the Change UID file example: 0x1E, 0xD3, 0xAB, 0x78 but when I put my card on it says:
"Card did not respond to 0x40 after HALT command. Are you sure it is a UID changeable one?
Error name: Timeout in communication.
Activating the UID backdoor failed. "
Affected file(s) or example(s):

Filename 1: Change UID
Filename 2: RFID cloner

Steps to reproduce:

Observed Results:

What happened?  This could be a description, log output, screenshot, etc.

Expected Results:

What did you expect to happen?

Relevant Code:
  // TODO(you): code here to reproduce the problem

You can not change the uid of normal cards as the error mentioned. Maybe it is a "magic card v2" then use  #448 or #522.


Nei debug expression

Many thanks @nickilott
@CGATOxford/contributors  could you please have a quick look before merging this one?

Brilliant, many thanks!


stuck at the "Creating dataset ImagePairs" when evaluate lightglue on megadepth

Hi! I'm trying to evaluate lightglue on megadepth using given code and command:
python -m gluefactory.eval.megadepth1500 --conf superpoint+lightglue-official

but it is stucked at the out "gluefactory.datasets.base_dataset INFO] Creating dataset ImagePairs" for one hour. I guess it is not a normal behavior. By debuging, i find it is at the code hfile = h5py.File(str(output_file), "w") . Can you give me some advice? Thanks!
(I install the repo following the readme)
cc @sarlinpe @Phil26AT

Sorry I find the problem, This is a conflict between the file system and h5py. See at issue.


Explicitly state whether vim needs to be built with Python 2.x or 3.x scripting support

Could you update the README.mdown to explicitly indicate whether vim needs to be built with Python scripting support?
e.g. the +python27 or +python33 variant if installing vim from MacPorts.

May this article could give more clues: https://www.osso.nl/blog/flake8-vim-python2-python3/


[CT-2602] [Bug] Encountered unknown tag 'break'

Is this a new bug in dbt-core?

[X] I believe this is a new bug in dbt-core
[X] I have searched the existing issues, and I could not find an existing issue for this bug

Current Behavior
I get this issue when trying to run dbt build:
09:11:32.564247 [error] [MainThread]: Encountered an error:
Compilation Error
Encountered unknown tag 'break'. Jinja was looking for the following tags: 'elif' or 'else' or 'endif'. The innermost block that needs to be closed is 'if'.
line 20
{%- break -%}
With dbt core 1.4.3 and dbt-sqlserver 1.4.3 i don't get the same with 1.3.1.
I think this is related to this file which containts break:
https://github.com/dbt-labs/dbt-core/blob/main/core/dbt/include/global_project/macros/materializations/models/table/columns_spec_ddl.sql
Specifically:
{%- for sql_col in sql_columns -%}
{%- set yaml_col = [] -%}
{%- for this_col in yaml_columns -%}
{%- if this_col['name'] == sql_col['name'] -%}
{%- do yaml_col.append(this_col) -%}
{%- break -%}
{%- endif -%}
{%- endfor -%}
When I do a search I see that break is not supported in Jinja2, but there seems to be somekind of extension to jinja to allow break? Is there something wrong with my environment?
https://stackoverflow.com/questions/22150273/how-can-i-break-a-for-loop-in-jinja2
Expected Behavior
In dbt 1.3.1 I can build the same project without an issue, however the file that I believe causes the problem doesn't exist in that version.
Steps To Reproduce

dbt-core with dbt-sqlserver 1.4.3
dbt build

Relevant log output
09:11:32.564247 [error] [MainThread]: Encountered an error:
Compilation Error
Encountered unknown tag 'break'. Jinja was looking for the following tags: 'elif' or 'else' or 'endif'. The innermost block that needs to be closed is 'if'.
line 20
{%- break -%}

Environment
- OS: Windows 10
- Python: 3.9.5
- dbt: 1.4.3

Which database adapter are you using with dbt?
other (mention it in "Additional Context")
Additional Context
dbt-sqlserver 1.4.3

I added this to my local jinja.py file and then it worked.

You must be mixing dbt Core 1.5 code and an earlier version. That extension was added in dbt Core 1.5 in core/dbt/clients/jinja.py at the same time that the columns_spec_ddl.sql file used the "break" command. It looks like your columns_spec_ddl.sql and core/dbt/clients/jinja.py file are from different versions.

Yes that's probably the case, I installed dbt-sqlserver before and there was a bug I think for some reason it installed the latest dbt-core, and I had to downgrade to the same version 1.4.3, maybe when I did the downgrade with
pip install --upgrade dbt-core==1.4.3
something didn't quite work out.


footer not working with predefined width

Thank you for submitting an issue to jsPDF. Please read carefully.
Are you using the latest version of jsPDF? yes
Have you tried using jspdf.debug.js? no
Steps to reproduce
http://jsbin.com/haxoges/1/edit?html,js,console,output
What I saw
 is not showed when you align to the right or center:

if you align to the left the footer is showed:
What I expected
I expect to see the footer on the right, the same way as on the left

We are closing this issue, because we will not support any longer fromHTML and addHTML.
Explaination:
We are working on a new html2pdf plugin, which will be based on html2canvas and our context2d plugin. This should lead to more reliable results for your projects. And it will give us the time to focus on the core functionality of pdf-generation because we will not use our energy for writing/supporting/extending 2 html plugins. If you still want to use addHTML or fromHTML you can still use jsPDF 1.4.1.
Best Regards


Support Google Secrets Manager as an external secrets backend

Right now Vault is assumed the default backend, this should be configurable, let's allow GSM so we can host JX3 own dogfooding infra with it integrated.

Done. Yay!


Invalid bufferview

Describe the issue
glTF-Sample-Models/2.0/RiggedFigure/glTF-Draco/RiggedFigure.gltf can't get loaded (https://github.com/KhronosGroup/glTF-Sample-Models/tree/master/2.0/RiggedFigure/glTF-Draco)
The error message from tinygltf is accessor[77] invalid bufferView
To Reproduce

Linux
clang
https://github.com/KhronosGroup/glTF-Sample-Models/tree/master/2.0/RiggedFigure/glTF-Draco

Expected behaviour
I would expect this model to be loadable - especially because it's in the official KhronosGroup repository.
Screenshots
NA
Additional context
Source code where the tinygltf lib is used and the problem occurred with: https://github.com/mgerhardy/vengi/blob/master/src/modules/voxelformat/GLTFFormat.cpp

You need to build tinygltf with Draco support
g++  -I../draco/src/ -I../draco/build -DTINYGLTF_ENABLE_DRACO -L../draco/build -std=c++11 -g -O0 -o loader_example loader_example.cc -L../draco/build/ -ldracodec -ldraco

./loader_example /path/to/glTF-Sample-Models/2.0/RiggedFigure/glTF-Draco/RiggedFigure.gltf
Reading ASCII glTF
=== Dump glTF ===
asset.copyright          :
asset.generator          : COLLADA2GLTF
asset.version            : 2.0
asset.minVersion         :
...

Contributing better error reporting is much appreciated.


ARROW-8081: [Plasma] Fix memory limit bug & improve code

This PR fixes https://issues.apache.org/jira/browse/ARROW-8081
The memory limit was set at the getopt section. I fix it by moving this part to somewhere later than the huge pages section. Also I find mixed use of char * and std::string for socket names, and now they are all using std::string now.
Also convert ARROW_CHECK_OK to ASSERT_OK because all other unit tests in Arrow are using ASSERT_OK  now.

Ready for review now.

Hi @pcmoritz, could you help reviewing this PR? Thanks!

Re-trigger all tests since there are random failures.

Hi @suquark sorry for the late response.  It looks like there are merge conflicts now, would you mind rebasing and I can take a look afterwards?

@suquark could you take a look?

I'm closing this. We need to have a discussion about the future of this code on the mailing list


Immediate-mode execution in TensorFlow

Mirror TensorFlow API to provide "numpy/Torch"-like mode for executing TensorFlow programs.
Briefly, provide a mode where you can do the following:
a = tf.constant([[1,1],[1,1]])   # constant is created
b = tf.constant([[2,2],[2,2]])
c = tf.matmul(a, b)  # executes matrix multiplication
print c                      # transfers contents of c from TensorFlow runtime to Python runtime and prints it

Goals

No separation between graph-construction and evaluation - each op is executed in TensorFlow runtime the moment the corresponding wrapper is evaluated by Python
Reuse of TensorFlow Graph for efficiency. For instance, after float32 addition was performed once, any additional float32 addition operations should be done by reusing previously created OpDef
Immediate-style Tensor object implements functions in 3.4.8. Emulating numeric types and translates them to appropriate TensorFlow operations
Immediate-style Tensor object keep contents of underlying tensors in TensorFlow runtime and only transfers them to Python when necessary, such when needed for flow control and printing.

Design doc: https://docs.google.com/document/d/1CRfhT2_-EaboFbN1U7gKXlGIVAZ21bWpcl1fOwDZLjw/edit#heading=h.yhcm0hj5bq25
CLA signed (for design doc). I'll start submitting code for this as soon as I figure out github/bazel workflow
@keveman @yuanbyu

This is worked on in request #2346
atm, Tensorflow-native ops work in immediate-mode, but missing infrastructure to support Python-only ops, which happen to be the most popular ops
Estimating another week to get Python-only ops working

The new pull request is https://github.com/tensorflow/tensorflow/pull/2595.  I've pinged @yuanbyu for comment.

New pull request is https://github.com/tensorflow/tensorflow/pull/2747

@yaroslavvb Can this be closed, then?

@keveman this is the main tracking issue though, those other links are pull requests

All the linked PRs seem closed, therefore closing this issue.
Please reopen if this is still being worked on.


Unable to download highlights

Hi, thanks for your feedback, please try the latest version(2.1.2).


Add is relevant #1530

Now all accepted proposals + propose to cancel are set to isRelevant = false after accepting them
Fixes #1530
Fixes #1532
Fixes #1542

Blocked by #1643

Still blocked by #1643


Adding fonts support to build task (Angular1 + Bower)

Hi all,
is it possible to add a "fonts task" to build process? Basic example:
gulp.task('fonts', fonts);
function fonts(){
    return gulp.src([
        'bower_components/font-awesome/fonts/*',
        'bower_components/bootstrap/fonts/*'
    ])
    .pipe(gulp.dest(path.join(conf.path.dist(), '/fonts/')));
}

Hi @eonardol
So far, Fountain is quite minimalist and doesn't provide a configuration for every case. But you can configure your own gulp tasks.

@eonardol I've also been struggling with including font awesome so I would love to see this added! Definitely going to use your code snippet, thanks for posting!

Fonts have been the most problematic feature of gulp-angular so I don't want it to be included in Fountain. We stay out of this.
Anyway, any recipe in a PR will be considered

@Swiip I realize the reasoning... But by supporting bower as part of the generator, 3rd party font management is indeed an inherited responsibility. Two additional gulp tasks would be able to take care of this, both local and bower being supported.
Please consider reopening this ticket, as it comes as a waterfall effect of supporting bower, and then I can create a PR.


Support ~ as a way to use locate

For things that do not go through the loader, like less imports, css urls, ~ can be a way to have users opt-in to having certain things use the module loader for locating.
This is tracking a change that will be needed in several places, correct me if I've missed one:

[x] - Importing javascript: import foo from "~/foo", System.import("~/foo"), etc.
[x] - Import in less: @import "~/variables.less";
[x] - css urls: url('~/my-font.woff) (also in less)

There will also be a separate issue in CanJS that allows:

[x] - Importing partials: {{> ~/address/address.mustache}}
[ ] - Loading images in a <img> tag: <img src="~/images/boat.jpg"/>

This will probably be implemented as a separate plugin.

We have the locate:// scheme now.  We still want a way to prevent having to write the package name, creating https://github.com/stealjs/steal/issues/719 for that.


Typed JSonPointer

Can this library make doing something simpler?
I'd like to be able to use typed objects to parse JSonPointer
Additional context
The JSonPatch lib i'm currently using is having typed object and that makes it a lot more easier to maintain than hardcoded string.
var patch = new JsonPatchDocument<Item>();
patch.Replace(link => link.Price, newPrice);

This shouldn't be very difficult.  Nice suggestion.

To what extent do you need support?  I have this working locally:
JsonPointer.Create<TestClass>(x => x.NestMore[5].Nest); // creates "/NestMore/5/Nest"

seems like perfect in my case :)

just tested: Works like a charm


Special symbols (#) cause errors when resolving dependency paths

Describe the bug
Special symbols (#) cause errors when resolving dependency paths
For example  package [es5-ext] (https://www.npmjs.com/package/es5-ext) has a path: require("es5-ext/string/#/contains"), vite will try to read the file es5-ext/string/index.js#/contains
the problem is solved when the name of the special symbol is renamed, but many npm packages have this  # problem.
Reproduction
https://github.com/nullice/vite-bug-path-resolver-symbol-sharp-1
try npm run dev
System Info
Output of npx envinfo --system --npmPackages vite,@vitejs/plugin-vue --binaries --browsers:
  System:
    OS: macOS 11.1
    CPU: (8) x64 Intel(R) Core(TM) i5-8279U CPU @ 2.40GHz
    Memory: 310.94 MB / 16.00 GB
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 14.16.0 - /usr/local/bin/node
    Yarn: 1.19.1 - /usr/local/bin/yarn
    npm: 7.6.3 - /usr/local/bin/npm
  Browsers:
    Chrome: 89.0.4389.114
    Chrome Canary: 91.0.4466.0
    Firefox: 70.0.1
    Safari: 14.0.2

Used package manager:  yarn
Logs

[vite] new dependencies found: d, updating...
  vite:resolve 0ms   es5-ext/string/#/contains -> null +0ms
  vite:resolve 1ms   es5-ext/string/#/contains -> /Users/XXX/TEST/vite-bug/vite-bug-sharp/node_modules/es5-ext/string/index.js#/contains +0ms
 > node_modules/d/index.js:7:30: error: Could not read from file: /Users/XXX/TEST/vite-bug/vite-bug-sharp/node_modules/es5-ext/string/index.js#/contains
    7 │   , contains        = require("es5-ext/string/#/contains");
      ╵                               ~~~~~~~~~~~~~~~~~~~~~~~~~~~

 [vite] error while updating dependencies:
Error: Build failed with 1 error:
node_modules/d/index.js:7:30: error: Could not read from file: /Users/XXX/TEST/vite-bug/vite-bug-sharp/node_modules/es5-ext/string/index.js#/contains
    at failureErrorWithLog (/Users/XXX/TEST/vite-bug/vite-bug-sharp/node_modules/esbuild/lib/main.js:1224:15)
    at buildResponseToResult (/Users/XXX/TEST/vite-bug/vite-bug-sharp/node_modules/esbuild/lib/main.js:936:32)
    at /Users/XXX/TEST/vite-bug/vite-bug-sharp/node_modules/esbuild/lib/main.js:1035:20
    at /Users/XXX/TEST/vite-bug/vite-bug-sharp/node_modules/esbuild/lib/main.js:568:9
    at handleIncomingPacket (/Users/XXX/TEST/vite-bug/vite-bug-sharp/node_modules/esbuild/lib/main.js:657:9)
    at Socket.readFromStdout (/Users/XXX/TEST/vite-bug/vite-bug-sharp/node_modules/esbuild/lib/main.js:535:7)
    at Socket.emit (events.js:315:20)
    at addChunk (internal/streams/readable.js:309:12)
    at readableAddChunk (internal/streams/readable.js:284:9)
    at Socket.Readable.push (internal/streams/readable.js:223:10)

Closing as duplicate of https://github.com/vitejs/vite/issues/2346, there is an open PR to fix this issue https://github.com/vitejs/vite/pull/2432


Mac only: Mission window glides across screen when moved

When I start up the Minecraft server, I'm able to move and adjust the screen as I please.
However, after starting a mission, any attempt to move the Minecraft window will send it spiralling out of control across the screen, often sliding out of vision, necessitating a restart of the server.
Additionally, adding a videoproducer to the XML centers the Minecraft window. Combined with the screen playing ice hockey with the Minecraft window, this can make it very annoying to run tests on a single laptop screen.
According to David Bignell, this only happens on Mac, hence the title.

Yes, after some digging it seems it's due to to the following code in EntityRenderer:
        if (flag && Minecraft.IS_RUNNING_ON_MAC && this.mc.inGameHasFocus && !Mouse.isInsideWindow())
        {
            Mouse.setGrabbed(false);
            Mouse.setCursorPosition(Display.getWidth() / 2, Display.getHeight() / 2 - 20);
            Mouse.setGrabbed(true);
        }

This is also the reason why the OSX Minecraft window is so reluctant to relinquish the mouse capture (Malmo contains code to ensure Minecraft doesn't keep hold of the mouse, which works fine on Windows and Linux). Any time the window gains focus and the mouse is outside of the window, the mouse is automatically grabbed, and moved to within the window... Unfortunately, if you are dragging the window, the window gets moved with the mouse (leaving the mouse outside the window client area again, thus re-triggering the move, shifting the window again, etc.etc.)

As for the automatic centring of the window after resize...
In theory this should be an easy fix - just grab the x/y coords of the window before resizing, and reset them afterwards:
            int oldX = Display.getX();
            int oldY = Display.getY();
            DisplayMode dm = new DisplayMode(this.renderWidth, this.renderHeight); // new dimensions
            Display.setDisplayMode(dm); // resizes window
            Display.setLocation(oldX,  oldY); // reset position

Unfortunately there are a few problems with this:
Firstly, lwjgl (which Minecraft uses) has mismatched position getters/setters - the getters seem to take into account the window furniture (title bar etc), whereas the setters don't - so calling
Display.setLocation(Display.getX(), Display.getY())

will result in the window gradually creeping up and to the left.
Secondly, this is lwjgl's helpful OSX implementation of the reshape method (which is called by setLocation):
	public void reshape(int x, int y, int width, int height) {
        //if (native_mode) {
        //    nResizeWindow(window, x, y, width, height);
        //}
	}

So calling setLocation on OSX doesn't actually move the window at all... though it does cache the values for x and y, which will then be used the next time the window is recreated (eg when the dimensions change), so, somewhat counter-intuitively, this almost works:
            int oldX = Display.getX();
            int oldY = Display.getY();
            Display.setLocation(oldX,  oldY); // Do this *before* changing dimension
            DisplayMode dm = new DisplayMode(this.renderWidth, this.renderHeight); // new dimensions
            Display.setDisplayMode(dm); // resizes window

Why is the setLocation necessary at all, in this case?
Because Display's cached x and y values (which are used when recreating the window) have nothing to do with the window's actual position. They are not updated if the window is moved by the user. (This is what causes the centring in the first place - by default they are set to -1, which is a magic value used to indicate that the window should be centred, and moving the window manually doesn't change them, so each resize re-centres the window.)
Fortunately Display.getX() and getY() get the actual window positions (hence the mismatch between getters and setters - the getWindowX() and getWindowY() methods which return the cached values are private), and then these values can be written back to the cached values using setLocation, so that the window will appear in roughly the right place after recreation.
Ugh.

To make matters worse, according to the lwjgl documentation for setLocation, "The window is clamped to remain entirely on the screen."
As far as I can tell, this is just a lie. There doesn't appear to be any code anywhere that actually implements this. So the result of creeping up and to the left, eventually, is that the Minecraft window disappears off screen entirely.
Admittedly, it takes a while for this to happen, and under normal working conditions the Minecraft window won't be changing size often, so it shouldn't present a problem in most cases.

This has been "fixed" (allowing for the above ugliness) in 0.31.0.

Am reopening this because the fix (making sure this.mc.inGameHasFocus is false for the check in EntityRenderer) breaks the continuous attack command.


Unable to Drag and Drop files from Windows Explorer

Windows Terminal version (or Windows build number)
1.6.10571.0
Other Software
Windows Explorer (Windows 10 Version 2004)
Steps to reproduce

Open a Command Prompt tab in Windows Terminal 1.6.10571.0
Open a folder in Windows Explorer
Drag a file from Windows Explorer onto the Windows Terminal Window

Expected Behavior
The file path should appear at the cursor location, potentially wrapped in quotes if it contains a space. (I at least assume it should, since https://github.com/microsoft/terminal/issues/904#issuecomment-585892437 states that the feature has been implemented)
Actual Behavior
Nothing happens. Before I let go of the mouse the "not-allowed" cursor is displayed.

Are you running Terminal as elevated or regular user when attempting this? Did you try doing both and still have issue?

I just learned something new about this issue. I've had it on two devices, but the root seems to be different.
Device 1:
The user is Administrator, UAC is disabled (and Windows Terminal therefore as well, displays "Administrator: " in the title bar, etc.)
However I haven't started Windows Terminal as administrator and Dragging and Dropping files does work with cmder, cmd and powershell no matter if they're elevated or not (obviously as long as they're not attached to the Windows Terminal).
Device 2:
The user is Administrator of the machine, but UAC is enabled (and Windows Terminal doesn't display "Administrator: " in the title bar)
Here it works perfectly if I use cmd via Windows Terminal, but it doesn't work at all if I use cmder via Windows Terminal.
I thought this was one and the same issue (because I usually use cmder via Windows Terminal), but have just realized that one of the two appears to be caused by cmder (via Windows Terminal) and one (potentially) by disabling UAC.
If this appears to be a duplicate of https://github.com/microsoft/terminal/issues/7754, feel free to close this issue.

The user is Administrator, UAC is disabled

Yep, sure does sounds like a dupe to me, thanks!
/dup #7754


Add k8s-monolith example

Issue: https://github.com/networkservicemesh/cmd-nse-simple-vl3-docker/issues/1
Signed-off-by: Artem Glazychev<EMAIL_ADDRESS>

LGTM ... as soon as it moves from being a draft I'm happy to merge :)


ServerMode - dont bother resetting multiple times in parallel

For tests with multiple decorators, each decorator will reset at the beginning, and make a call to localhost:5000/moto_api/reset.
However, the reset-implementation resets everything in the backend - so there's no point in calling the reset-API multiple times.
This only goes for ServerMode, but should increase performance of our internal tests by reducing the number of HTTP calls made.

Codecov Report

Merging #5264 (92a9682) into master (f513d6c) will decrease coverage by 0.01%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master    #5264      +/-   ##
==========================================
- Coverage   95.96%   95.94%   -0.02%
==========================================
  Files         688      688
  Lines       69039    69044       +5
==========================================
- Hits        66251    66247       -4
- Misses       2788     2797       +9

Flag
Coverage Δ

servertests
36.14% <100.00%> (+<0.01%)
:arrow_up:

unittests
95.89% <22.22%> (-0.02%)
:arrow_down:

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

Impacted Files
Coverage Δ

moto/__init__.py
97.20% <100.00%> (ø)

moto/core/models.py
96.52% <100.00%> (+0.07%)
:arrow_up:

moto/resourcegroupstaggingapi/models.py
82.93% <0.00%> (-0.60%)
:arrow_down:

moto/sns/models.py
96.83% <0.00%> (-0.40%)
:arrow_down:

moto/route53/responses.py
96.05% <0.00%> (-0.33%)
:arrow_down:

moto/efs/models.py
91.07% <0.00%> (-0.30%)
:arrow_down:

moto/sqs/models.py
96.73% <0.00%> (-0.18%)
:arrow_down:

moto/config/models.py
99.21% <0.00%> (-0.14%)
:arrow_down:

moto/ssm/models.py
94.50% <0.00%> (-0.11%)
:arrow_down:

Continue to review full report at Codecov.

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


Remove dependency on graceful-fs

Since we only use fs.existsSync from that package and that checking for existence should be done now using fs.statSync we should just align and remove the dependency as well.

I don't see graceful-fs being used in the code anywhere, still relevant?

Probably not. If not actually used it can be removed.
Roy Ronald Riojas Montenegro
On Sat, Aug 14, 2021 at 12:33 PM Jimmy Wärting @.***>
wrote:

I don't see graceful-fs being used in the code anywhere, still relevant?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/royriojas/flat-cache/issues/27#issuecomment-898949675,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABABWTGH7NYAQKYSU4XONLT43AHBANCNFSM4GCEVZYQ
.

don't see any graceful-fs being used anywhere in this repo. can probably close this issue


Add conditional loading (browser/node versions of serialization-lib)

Partially addresses #69.
Nix builds are still TODO.
Note that other PRs should change serialization-lib imports when this is merged (by copy-pasting import code from here)

Having to to commit the nodepackages.nix , it's bit and ugly, but no way around it at this time.

I made some more changes to ensure websocket wrapper works in the browser.
@ngua what was the problem with purs-loader?

@klntsky The purs-loader thing was a misleading error from webpack. The issue was just that the PS wasn't compiling. I didn't have the time that evening to investigate further and found the real issue the next day


pyodbc.OperationalError: ('08001', '[08001] [Microsoft][ODBC Driver 17 for SQL Server]TCP Provider: Error code 0x2746 (10054) (SQLDriverConnect)')

Environment
Hi, I am running the following --

Python: 3.6 (64 bit)
pyodbc: 4.0.27
OS: Linux (Redhat 7.6)
driver: ODBC Driver 17 for SQL Server

and am trying to access a SQL SERVER (version 10.0.1600.22) hosted on a Windows NT 5.2 (XP/Server 2003) machine.
Code
`def connectToSQLServer(server_name, username, password, db_name):
conn = pyodbc.connect(
                      'Driver={ODBC Driver 17 for SQL Server};'
                      f'Server={server_name};'
                      f'Database={db_name};'
                      f'UID={username};'
                      `f'PWD={password};'`
                      'Mars_Connection=Yes;'
                     )
return conn

conn = connectToSQLServer(server_name='<server_name>', username='',password=,db_name='<db_name>')`
Issue
Issue
I am receiving the following error --
'Driver={ODBC Driver 17 for SQL Server};'
pyodbc.OperationalError: ('08001', '[08001] [Microsoft][ODBC Driver 17 for SQL Server]TCP Provider: Error code 0x2746 (10054) (SQLDriverConnect)')
I am able to access several other SQL Server machines using the same environment and code without issue, although they are using more recent Operating Systems (Windows NT 6.0+) and SQL Server versions (10.5+).
I understand that Windows NT 5.2 and SQL Server (10.0.1600.22) are very old and no longer supported. I read the following ticket (https://github.com/Microsoft/msphpsql/issues/252) and some people suggested the Operating System needs to be upgraded. So I'm wondering if that may be the case here.
However, I am a little skeptical because I am able to establish connection when I run the same code but from my local Windows 10 laptop, which uses the Windows equivalent of the same ODBC driver. My local Windows 10 machine also uses the same Python and pyodbc versions. So my real question is, how come I can establish a connection from my Windows 10 machine but not from the Linux machine? Could there be something else at play here?
Thanks a lot for your help.

Just to rule out pyodbc itself, can you try to connect directly using the ODBC driver?
To do so run isql -v -k "<Your connection string>", and see if it gives the same error.
Also it may be useful to look at ODBC traces from the successful Windows connection and the failed connection. (https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/data-access-tracing-with-the-odbc-driver-on-linux?view=sql-server-2017)

Hi v-makouz,
The isql command returns the same error --
[08001][Microsoft][ODBC Driver 17 for SQL Server]TCP Provider: Error code 0x2746
[08001][Microsoft][ODBC Driver 17 for SQL Server]Client unable to establish connection
[ISQL]ERROR: Could not SQLDriverConnect
I also did the tracing for both the successful windows 10 connection and the failed linux one. I attached those logs to this message (and removed the private connection information). I looked them over but didn't see anything stick out but it's my first time ever reading those type of logs.
Since we've ruled out that it is not pyodbc related I understand if you have to close the ticket. But if you or anyone else can point me in the right direction I would greatly appreciate it.
Thank you,
Zack
database_connection_trace_linux.txt
database_connection_trace_windows_10.LOG

Does it make any difference if you explicitly specify Encrypt=no in your connection string?

What version of OpenSSL are you using on the RedHat machine? You can run openssl version to check.
Could you do a packet capture with Wireshark in both the working and non-working cases? The difference could be due to TLS configuration.

Adding "Encrypt=no" to the connection string still returns the same error.
OpenSSL version is OpenSSL 1.0.2k-fips on the Red Hat machine.
I will work on setting up wireshark to analyze both cases.
Thank you both.

@sponaugle Did you ever find a solution? I'm having the same issue.

@adamtabrams could you provide your environment details, and Wireshark if possible?

Environment

Python: 3.7
pyodbc: 4.0.27
unixodbc-dev 2.3.6
msodbcsql17 <IP_ADDRESS>-1
OS: Linux (Debian Buster-Slim 10.1)
Running as a Docker container
driver: ODBC Driver 17 for SQL Server

Issue
With this environment, I was getting the same error as sponaugle when I was trying to connect to the database. I was actually able to fix the problem for my use case by switching to Debian Stretch-Slim 9.11. One slight difference that I noticed is that Stretch has unixodbc-dev 2.3.7 available, but it seems that only 2.3.6 is available for Buster (even though it's newer). Now that I have it working, I'm done tinkering with it, but I hope that's enough info to point everyone in the right direction. Thanks!

You may be seeing the effect of the OpenSSL changes in Debian: https://wiki.debian.org/ContinuousIntegration/TriagingTips/openssl-1.1.1
Also note that you can get the unixODBC 2.3.7 packages here too: https://packages.microsoft.com/debian/10/prod/pool/main/u/unixodbc/

Hi,
I was experiencing the same problem, and fixed thanks to @v-chojas comment above. Just edited /etc/ssl/openssl.cnf and changed:
MinProtocol = TLSv1.0
CipherString = DEFAULT@SECLEVEL=1

Confirmed this worked for me:
https://stackoverflow.com/questions/57265913/error-tcp-provider-error-code-0x2746-during-the-sql-setup-in-linux-through-te/57453901#57453901
System Info
Python: 2.7
pyodbc: 4.0.26
OS:  Ubuntu 18.04
driver: ODBC Driver 17 for SQL Server

My openssl.cnf file in Red Hat 7 does not have any existing MinProtocol or CipherString options. Also its path is at /etc/pki/tls. Not sure if that matters.

@sponaugle I can confirm that @roirodriguez 's solution works. It seems that there are different ways to input default values. Deleting them (or not having them) it one of them. At least on Ubuntu 18.04 it works with no entries and openssl v1.1.1g
A third option is mentioned in the Debian release issues, which is just a different take on the info already provided by @v-chojas.
Thanks a million to all of you for pointing me in the right direction :)
For future reference for conda users. My problem arose when upgrading miniconda bases image from 4.5.12 (Debian 9) to 4.7.12 (Debian 10), which was required due to some package resolving issues in existing environments.

I can also confirm @roirodriguez worked in Debian 10

Just wanted to chime in here and mention that at least in my case, the issue wasn't due to SQL Server lacking support for TLSv1.2 but rather to the server's certificate having too weak a key.
The ideal solution in this case is obviously to update the server certificate, but failing that it also works to set CipherString = DEFAULT@SECLEVEL=1 as mentioned by @roirodriguez and leave MinProtocol alone.

In case anyone (like me) stumbles onto this thread without knowing even the basics of linux; this is how I ended up implementing @roirodriguez's fix in my Dockerfile:
RUN chmod +rwx /etc/ssl/openssl.cnf
RUN sed -i 's/TLSv1.2/TLSv1/g' /etc/ssl/openssl.cnf
RUN sed -i 's/SECLEVEL=2/SECLEVEL=1/g' /etc/ssl/openssl.cnf

sed -i replaces text in a file in-place, while the chmod-command was necessary to give the current user access rights to the file.

Even with 'encrypt=no' I see a TDS7 pre-login message - TLS exchange sent by the client, followed by a FIN, ACK from the server. Setting CipherString = DEFAULT@SECLEVEL=1 in openssl.cnf allows the connection to proceed, there's further TDS7 pre-login messages showing the default self-signed certificate and a TLS exchange which appears to contain the login.
So a) the default certificate is too weak and b) something's attempting TLS even with encrypt=no.

See the TDS spec Encryption section: https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-tds/60f56408-0188-4cd5-8b90-25c6f2423868
The default cert (and the TLS handshake) is present to provide some protection from passive attackers, if you need something stronger you can set up your own certificate: https://docs.microsoft.com/en-us/sql/database-engine/configure-windows/enable-encrypted-connections-to-the-database-engine

The same error occurred when trying to connect from python using SQLAlchemy on windows.

This is a TLS configuration issue, and is unrelated to pyODBC.

Well can you document it somewhere then? Because clearly lots of people hit the problem. Ideally with the error messages so it's good Google bait. Also that encrypt=no isn't respected.

The behaviour of TDS Encryption is documented in the link I posted above.

Clearly nobody knows how to find those documents or that they're the root cause of their connection problems since people keep filing bugs. Perhaps on https://github.com/mkleehammer/pyodbc/wiki/Connecting-to-SQL-Server-from-Linux or https://docs.microsoft.com/en-us/sql/connect/python/pyodbc/step-3-proof-of-concept-connecting-to-sql-using-pyodbc?view=sql-server-ver15 ?

after adding to /etc/ssl/openssl.cnf the lines MinProtocol = TLSv1.0 and CipherString = DEFAULT@SECLEVEL=1
what do we need to restart/refresh? I still get "TCP Provider: Error code 0x2746" and "Client unable to establish connection" after executing sqlcmd.

You will need to provide a lot more information about your environment for anyone else to be able to give you more assistance.

my environment is Ubuntu 20.04 LTS, running nginx web service and PHP 7.4. from there I try to connect to M$ SQL Server 2014 database on a Windows 2012 R2 server.
on the Ubuntu-box I have unixodbc-dev 2.3.7, msodbcsql17 <IP_ADDRESS>-1, openssl 1.1.1f.
as far as I understood, this SQL connection is using TLS v1.2 by default, which is causing problems, and we need to force the connection to use TLS v1.0 - and that is achieved by modifying /etc/ssl/openssl.cnf ?

Everything in that list supports TLS 1.2. Make sure your server has this update:
https://support.microsoft.com/en-us/help/3135244/tls-1-2-support-for-microsoft-sql-server

Still running into this issue even after changing TLS configuration on Debian 10. My connection string is the following: DRIVER={ODBC Driver 17 for SQL Server};SERVER=sqlserver,1936;UID=user;PWD=password where the port is specified as per the library sqlserverport when getting the instance name via sqlserverport.lookup(server_name, instance_name).

"port" is not a valid connection string keyword.
If you could post a packet trace, that can help determine if it is due to TLS configuration or something else.

If someone is using CENTOS 8 or similar, the command below and a reboot solved my issue (as a workaround):
update-crypto-policies --set LEGACY
It makes openssl run in compatibility policy with legacy protocols.

@shushko1 Try this

You need to add this to the beginning of your config file:
openssl_conf = default_conf
And then this to the end:
[ default_conf ]
ssl_conf = ssl_sect
[ssl_sect]
system_default = system_default_sect
[system_default_sect]
MinProtocol = TLSv1.2
CipherString = DEFAULT:@SECLEVEL=1

Refer https://askubuntu.com/questions/1233186/ubuntu-20-04-how-to-set-lower-ssl-security-level

adding these 2 lines to the end of /etc/ssl/openssl.cnf on MacOS Catalina works for me
MinProtocol = TLSv1.0
CipherString = DEFAULT@SECLEVEL=1

@shushko1 Try this for Ubuntu 20.04
You need to add this to the beginning of your config file at /etc/ssl/openssl.cnf

openssl_conf = default_conf

And then this to the end:

[ default_conf ]
ssl_conf = ssl_sect
[ssl_sect]
system_default = system_default_sect
[system_default_sect]
MinProtocol = TLSv1.2
CipherString = DEFAULT:@SECLEVEL=1

Refer https://askubuntu.com/questions/1233186/ubuntu-20-04-how-to-set-lower-ssl-security-level
The safe way to do it is by following @v-chojas comments above. Lower the security level only if you do not have access to the server and you need to handle it from client side.

Brow, this works for me in ubuntu 20.04. Thanks a lot!

@shushko1 Try this for Ubuntu 20.04
You need to add this to the beginning of your config file at /etc/ssl/openssl.cnf

openssl_conf = default_conf

And then this to the end:

[ default_conf ]
ssl_conf = ssl_sect
[ssl_sect]
system_default = system_default_sect
[system_default_sect]
MinProtocol = TLSv1.2
CipherString = DEFAULT:@SECLEVEL=1

Refer https://askubuntu.com/questions/1233186/ubuntu-20-04-how-to-set-lower-ssl-security-level
The safe way to do it is by following @v-chojas comments above. Lower the security level only if you do not have access to the server and you need to handle it from client side.

Brow, this works for me in ubuntu 20.04. Thanks a lot!

It worked for me with "Encrypt=no;"

@shushko1 Try this for Ubuntu 20.04
You need to add this to the beginning of your config file at /etc/ssl/openssl.cnf

openssl_conf = default_conf

And then this to the end:

[ default_conf ]
ssl_conf = ssl_sect
[ssl_sect]
system_default = system_default_sect
[system_default_sect]
MinProtocol = TLSv1.2
CipherString = DEFAULT:@SECLEVEL=1

Refer https://askubuntu.com/questions/1233186/ubuntu-20-04-how-to-set-lower-ssl-security-level
The safe way to do it is by following @v-chojas comments above. Lower the security level only if you do not have access to the server and you need to handle it from client side.

Thanks! This worked fine for me.

I got ln: /usr/local/opt/openssl: No such file or directory and which openssl shows: /usr/bin/openssl Instead of /usr/local/opt/openssl. How to fix this?

How can I fix this in Heroku?

It was a huge pain getting this working on macOS Catalina with Python 3.9.7, but I eventually figured it out.
The first issue was my mac was running LibreSSL 2.8.3, while the ODBC Drive wants OpenSSL 1.0 or 1.1. I confirmed with openssl version. I installed OpenSSL 1.1.1 using Homebrew (I might have had to uninstall a newer version that was installed prior to that, I can't recall). Instructions here: https://github.com/microsoft/homebrew-mssql-release/issues/59#issuecomment-928957200
If openssl version is still showing the wrong version, you can prepend the correct OpenSSL directory to your PATH as described at https://stackoverflow.com/a/62595252.
At that point I was able to test my ODBC connector and confirm it was working.
isql -v -k "My Connection String"
Changing the SSL version broke Pyhon3 at some point, so I reinstalled.
brew reinstall python
I also edited openssl.cnf per the instructions in this thread. Finally, pyodbc worked.

Thanks to all who left comments above, they helped me resolve my issue.
I had a similar issue after installing gcloud on MacOS Big Sur.
The openssl version returned me LibreSSL 2.8.3.
The which and where commands gave me nothing while they're only showing the binary location.
The only thing that helped me to find a way to fix it was ls -la /usr/local/opt | grep openssl, which showed me that I have two OpenSSL versions installed on my computer.
lrwxr-xr-x   1 user  admin    30 Dec  2 09:30<EMAIL_ADDRESS>-><EMAIL_ADDRESS>lrwxr-xr-x   1 user  admin    27 Oct 31 21:07 openssl@3 -><EMAIL_ADDRESS>
Then I just updated the symlink with the following command ln -s<EMAIL_ADDRESS>/usr/local/opt/openssl and voila - everything is working as before.

Does it make any difference if you explicitly specify Encrypt=no in your connection string?

This worked for me
isql -v -k "Driver={ODBC Driver 18 for SQL Server};Server=<IP_ADDRESS>;Database=;UID=;PWD=;Encrypt=no"

I tried some solutions here and no one solved my problem. But, I found a solution here, upgrading OpenSSL to newer version 1.1.1. I was using 1.1.1f and upgraded to 1.1.1m. And now it works fine.
Environment:

OS: Ubuntu 20.04 (under WSL)
DB: SQL Server 2012
Driver: ODBC Driver 18 for SQL Server

I have recently updated to Ubuntu 22.04 which now has openssl 3.0 installed by default
The solution above editing the /etc/ssl/openssl.cnf works for 20.04 and openssl v1.1.x but not for openssl v3.0!!!
I discovered you have lower the security level again to 0 for this to work in Ubuntu 22.04
so change :
CipherString = DEFAULT:@SECLEVEL=1
to
CipherString = DEFAULT:@SECLEVEL=0
in /etc/ssl/openssl.cnf and it should work
this is using ODBC Driver 17 for SQL Server

How to fix this issue on Heroku?
2022-08-04T14:41:04.577720+00:00 app[web.1]: sqlalchemy.exc.OperationalError: (pyodbc.OperationalError) ('08001', '[08001] [unixODBC][Microsoft][ODBC Driver 17 for SQL Server]TCP Provider: Error code 0x2746 (10054) (SQLDriverConnect)')
Thanks a lot for your help.

Hello,
I'm trying to connect to MS SQL Database using pyodbc, but receiving error
"conn = pyodbc.connect(
pyodbc.OperationalError: ('08001', '[08001] [Microsoft][ODBC Driver 18 for SQL Server]SSL Provider: [error:0A000086:SSL routines::certificate verify failed:self-signed certificate] (-1) (SQLDriverConnect)')"
Below is the code. Can anyone please help?
OS: MAC OS Monterey
`
Code
import pyodbc
server = 'localhost'
conn = pyodbc.connect(
'Driver={ODBC Driver 18 for SQL Server};'
'Server=' + server + ';'
'Database=DemoDB;'
'UID=sa'
'PWD=MyPassword'
'TrustServerCertificate=yes;'
)
def read(conn):
print("Read")
cursor = conn.cursor()
cursor.execute(
"SELECT * FROM DEMO WHERE [DATE] > '2022-08-01' AND [LOCATION] LIKE '%Amsterdam%'")
for row in cursor:
print(f'row = {row}')
print()
read(conn)`

Check your connection string by printing it out carefully.

Hi @sponaugle
I am encountering same issue on RHEL 9.
Have tried adding these two lines below in /etc/ssl/openssl.cnf and /etc/pki/tls/openssl.cnf
(these two are connected)
MinProtocol = TLSv1.0
CipherString = DEFAULT@SECLEVEL=1
However it's still now working. Changing the SECLEVEL to 0 also not working
CipherString = DEFAULT@SECLEVEL=0
Have you find working solution for Red Hat?

10054 is a very generic message, it just means the server closed the connection (abruptly). Are you sure that your specific encounterance of this error is related to TLS version?

@v-chojas I am not sure if that is the cause, however when searching about this issue, this thread is the most relevant one.
Since this issue is very generic, can you suggest some way to trace down the root cause?
As an addition when trying to make sftp connection this issue seems to pop up also, not sure if this is related.

client_global_hostkeys_private_confirm: server gave bad signature for RSA key 0: error in libcrypto

So I was running into this error as well.  Finally tracked down the issue to the MS SQL Server: https://learn.microsoft.com/en-us/troubleshoot/sql/tools/error-message-when-you-open-configuration-manager
after fixing this and rebooting there is no need for the "workaround"

I had the same issue:

pyodbc.OperationalError: ('08001', '[08001] [Microsoft][ODBC Driver 18 for SQL Server]SSL Provider: The certificate chain was issued by an authority that is not trusted.\r\n (-2146893019) (SQLDriverConnect); [08001] [Microsoft][ODBC Driver 18 for SQL Server]Client unable to establish connection (-2146893019)')

And it was solved adding Encrypt=no
cnxn = pyodbc.connect(r'DRIVER={ODBC Driver 18 for SQL Server};SERVER='+x+';DATABASE='+database+';UID='+username+';PWD='+password+';Encrypt=no')

Boa noite! Tive o mesmo problema e resolvi com o Encrypt=no
OperationalError: ('08001', '[08001] fe_sendauth: no password supplied\n (101) (SQLDriverConnect)')
Solução:
import pyodbc
dados_conexao = ("Driver={PostgreSQL ODBC Driver(UNICODE)};"
"Server=<IP_ADDRESS>;"
"Database=postgres;"
"UID=postgres;"
"PWD=****;Encrypt=no;")
conexao = pyodbc.connect(dados_conexao)
print("Conexao bem sucedida")

En windows 11, me faltaba instalar openpyxl, pip install openpyxl.
Tambien verificar si es necesario instalar ODBC Driver 17 for SQL Server
https://learn.microsoft.com/en-us/sql/connect/odbc/download-odbc-driver-for-sql-server?view=sql-server-ver16

Client environment

Python: 3.11 (installed using miniconda)
pyodbc: 4.0.39
OS: Ubuntu 22.04
DB: hosted on a remote Windows machine with SQL Server 2012
driver: ODBC Driver 17 for SQL Server (a.k.a. 17.10 version)

Issue
I'm trying to connect to a remote SQL server hosted on a Windows Machine with SQL Server 2012. I want to read a table in the SQL database.
The pyodbc connection command was the following:
conn = pyodbc.connect(
    "Driver={ODBC Driver 17 for SQL Server};"
    "Server=" + server_name + ";"
    "Database=" + database + ";"
    "UID=" + user_name + ";"
    "PWD=" + password + ";"
    "TrustServerCertificate=yes"
)

I got a connection error:
pyodbc.OperationalError: ('08001', '[08001] [Microsoft][ODBC Driver 17 for SQL Server]TCP Provider: Error code 0x2746 (10054) (SQLDriverConnect)')
I tried to connect to the remote server using telnet on the 1433 port and it is ok. Then, I checked the SQL connection using the sqlcmd command using the same parameters. The connection was established and I was able to make queries.
I ran the isql command with the same connection string used with pyodbc and the connection was established.
I had to change the OpenSSL config following the issue comment to be able to connect at least with  sqlcmd or isql.
The OpenSSL version is the following
OpenSSL 3.0.9 30 May 2023 (Library: OpenSSL 3.0.9 30 May 2023)
How can that error be solved?
Thanks to everyone!

You can strace a successful connect using isql, and compare with an strace of your unsuccessful Python connect. In particular, pay attention to after it loads the driver lib (libmsodbcsql-17.x.so.y.z) for any differences.

You can strace a successful connect using isql, and compare with an strace of your unsuccessful Python connect. In particular, pay attention to after it loads the driver lib (libmsodbcsql-17.x.so.y.z) for any differences.

Thanks for your support @v-chojas
I can't understand all the logs and I'm not sure about the differences. Below strace of the isql command (on the left) and strace of the connection with python (on the right) after the driver lib loading.
Could it depend on the conda env configuration? Package missing? Symlink to be configured?
Can you help me to better understand the strace log files?

Here the last part of the strace related to the python connection:

If you actually post the files rather than images that can't be searched, then I may be able to read them.

If you actually post the files rather than images that can't be searched, then I may be able to read them.

Hi @v-chojas Thanks again for your support! Here the files.

Hi. The problem has been solved and the files are no longer available.

@gruossomonica hi! Im having the same issue. I can connect using the isql but not with pyodbc. It'll be so helpfull if you could tell me more about how you fix your problems! Thanks a lot!

Hi @jose-cheble, there were some problems with the sql server account. I have no useful tips. The IT department solved the issue.

10054 - connection reset by peer. Are you sure connection string is identical in success and failure case?

@v-chojas not only is the same connection string (i've checked it several times) but if a run my module where the connection to the sql server is made, the connection is succsessfull (python3 conn_sql_server.py).
this is conn_sql_server.py
import pyodbc
import traceback
class SQL:
def init(self):
self.connection_string = 'DSN=test;UID=user_postventa;PWD=#qpfactorypv.7;'
    try:
        self.connection = pyodbc.connect(self.connection_string)
        self.cursor = self.connection.cursor()
        pass
    except Exception as e:
        traceback.print_exc()
def get_cursor(self):
    return self.cursor

def close(self):
    try:
        self.connection.close()
    except:
        pass
    try:
        self.cursor.close()
    except:
        pass
    pass

if name == "main":
sql = SQL()
print("connected!!:", sql.connection)
sql.close()
but imported from another module (its an endpoint in flask):
from utils.conn_sql_server import SQL
sql = SQL()
it throws the 10054.

Im having the same issue.@jose-cheble,Just like you!

@mybugubird yesterday I solved it. For my case the issue was that my flask application also was using mysql-connector-python. Its seems that when the mysql library is imported some dependencies are in conflict. Also would be a good idea check the working directory, It dependes from where you execute the app.

MSSQL Server typically uses TLS/SSL for secure communication. By default, MSSQL Server typically supports multiple TLS versions, including TLS 1.0. However, due to security considerations, newer OpenSSL versions may not default to TLS 1.0 as it is considered insecure. By setting MinProtocol to TLSv1.0, you explicitly told OpenSSL that TLS 1.0 is allowed, which may solve some connection issues, especially if MSSQL Server still requires TLS 1.0 for communication.
sudo  vim /etc/ssl/openssl.cnf
MinProtocol = TLSv1.0
CipherString = DEFAULT@SECLEVEL=1

@sponaugle @eljirg
I am using amazon Linux for deploying Python with elastic beanstalk.
I am facing the same problem.
In Red Hat (in my case amazon Linux), you must configure /etc/pki/tls/openssl.cnf.
First, add or change,
openssl_conf = default_conf
and add to last line
[default_conf]
ssl_conf = ssl_sect

[ssl_sect]
system_default = system_default_sect

[system_default_sect]
MinProtocol = TLSv1.2
CipherString = DEFAULT@SECLEVEL=1

I write a bash code doing this job.
       # Define the directory and file
        DIR="/etc/pki/tls/"
        FILE="openssl.cnf"
        BACKUP_FILE="openssl.cnf.bak"

        # Navigate to the directory
        cd $DIR

        # Backup the original file
        cp $FILE $BACKUP_FILE

        # Check if openssl_conf already exists and modify/add as necessary
        grep -q "openssl_conf" $FILE
        if [ $? -eq 0 ]; then
            # Line exists, modify it
            sed -i 's/^openssl_conf =.*/openssl_conf = default_conf/' $FILE
        else
            # Line doesn't exist, add it
            echo "openssl_conf = default_conf" >> $FILE
        fi

        # Check if [default_conf] already exists, if not add the additional configuration
        if ! grep -q "\[default_conf\]" $FILE; then
            cat <<EOL >>$FILE

        [default_conf]
        ssl_conf = ssl_sect

        [ssl_sect]
        system_default = system_default_sect

        [system_default_sect]
        MinProtocol = TLSv1.2
        CipherString = DEFAULT@SECLEVEL=1
        EOL
        fi

        echo "File updated successfully!"

@sponaugle @eljirg I am using amazon Linux for deploying Python with elastic beanstalk.
I am facing the same problem.
In Red Hat (in my case amazon Linux), you must configure /etc/pki/tls/openssl.cnf.
First, add or change,
openssl_conf = default_conf
...

I can confirm that this works on Amazon Linux 2023, thanks @triplehoon.

Works for me on
Docker
Ubuntu 22.04
ODBC Driver 18 for SQL Server
In /etc/ssl/openssl.cnf file :
1/ change
openssl_conf = openssl_init
to
openssl_conf = default_conf
2/ add those lines at the end of file
`[ default_conf ]
ssl_conf = ssl_sect
[ssl_sect]
system_default = system_default_sect
[system_default_sect]
MinProtocol = TLSv1.2
CipherString = DEFAULT@SECLEVEL=0
`

@pmandadkes1207 ODBC connections don't like being forked in a different process. https://github.com/lurcher/unixODBC/issues/149

Hi, I was experiencing the same problem, and fixed thanks to @v-chojas comment above. Just edited /etc/ssl/openssl.cnf and changed:
MinProtocol = TLSv1.0
CipherString = DEFAULT@SECLEVEL=1

This was truly the solution and thank you 🎉
My challenge presented itself within a context of an Azure Function. Challenge is / was that once the changes were made they did not persisted upon reboots or subsequent deployments. Hence, with the help of the above guide my solution was to introduce an openssl.cnf within the codebase and reference it as environment variable.

Just dropping this out here, Hoping to save someone a compelling amount of time, If they are faced with the same challenge 🙏🏼

I've managed to get the connection working with ssl to an aws rds instance by using the following
Variables for database name etc removed.
Path to the SSL certificate included in the Lambda layer
ssl_certificate_path = './us-east-2-bundle.pem'
Connection string with SSL encryption
connection_string = (
f'DRIVER={{ODBC Driver 18 for SQL Server}};'
f'SERVER={server};'
f'DATABASE={database};'
f'UID={username};'
f'PWD={password};'
f'Encrypt=yes;'
f'TrustServerCertificate=yes;'
f'Trusted_Connection=no;'
f'WSID=localhost;'
f'APP=pyodbc-ssl;'
f'Mars_Connection=yes;'
f'ColumnEncryption=Enabled;'
f'SSL_Certificate={ssl_certificate_path}'
)
try:
# Establishing the connection
connection = pyodbc.connect(connection_string)
print("Connection successful")
# Example query execution
cursor = connection.cursor()
cursor.execute("SELECT @@VERSION;")
row = cursor.fetchone()
while row:
    print(row)
    row = cursor.fetchone()

except pyodbc.Error as e:
print(f"Error connecting to SQL Server: {e}")
finally:
# Closing the connection
if 'connection' in locals():
connection.close()
print("Connection closed")
No dsn connection just trying to see if I can connect.
odbcinst.ini
[ODBC Driver 18 for SQL Server]
Description=Microsoft ODBC Driver 18 for SQL Server
Driver=/opt/microsoft/msodbcsql18/lib64/libmsodbcsql-18.4.so.1.1
UsageCount=1
[ODBC]
Trace=Yes
TraceFile=/home/ec2-user/odbctrace.log

From where are you seeing that "SSL_Certificate" is a valid connection string keyword? Because it's not.
https://learn.microsoft.com/en-us/sql/connect/odbc/dsn-connection-string-attribute?view=sql-server-ver16

@v-chojas  your right it's not part of the dsn - SSL_CERT_FILE is an environment variable https://stackoverflow.com/questions/14286265/how-to-use-ssl-cert-file-for-openssl-windows-openssl-1-0-1c


Question on transition and transform

Hello,
I could could not figure out this part of the code in core.less where transition and transform are used together.
/*
 * Content Wrapper - contains the main content
 * ```.right-side has been deprecated as of v2.0.0 in favor of .content-wrapper  ```
 */
.content-wrapper,
.right-side,
.main-footer {
  //Using disposable variable to join statements with a comma
  @transition-rule: @transition-speed @transition-fn,
                    margin @transition-speed @transition-fn;
  .transition-transform(@transition-rule);
 // ...

What are you actually doing with @transition-rule: @transition-speed @transition-fn, margin @transition-speed @transition-fn;? is it supposed to be a less trick for conditional assignment? The previous block is compiled into this
.content-wrapper,
.right-side,
.main-footer {
  -webkit-transition: -webkit-transform 0.3s ease-in-out, margin 0.3s ease-in-out;
  -moz-transition: -moz-transform 0.3s ease-in-out, margin 0.3s ease-in-out;
  -o-transition: -o-transform 0.3s ease-in-out, margin 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, margin 0.3s ease-in-out;
  margin-left: 230px;
  z-index: 820;
}

I'm not that proficient in css3 but are those commas supposed to be there or are they leftovers of the conditional assignments in less. Is this valid css?
Thanks

Hello,
LESS doesn't allow for commas in mixins. So we had to extract the argument into a destroyable variable and pass it to the mixin. The comma here is to tell the browser to watch for margin and transform changes for the elements. Any changes should be simulated with a transition.
This is a valid CSS. All of our code is validated with code linters that prohibits us from using invalid code or non-best practices styles.
Thanks!

:+1:  Thanks!


2019-11-29 tc013 M2SD/tc015 M3SD missing CMIN/TMIN parameter

With commit 22d43ea but likely not specific to this commit, CMIN is defined in create_dependency_list for M2  and M3 (and is specified as a parameter in the Computation Engine Specification Document) but doesn't appear in
run_M2_SD_computation.R nor run_M3_SD_computation.R and isn't created in output for these models.

This issue was addressed in 6e99fab, please let me know if it still occurs.

This was tested successfully with commit b8deb76 and can be closed.


Test env

AOT/SSR support
Testing Suite with AOT/SSR
ng-packagr library bundler
Testing Environment App

Fixes #34 and implements #37

holy s**t why are there so many changed files? were dist files commited?

ok i see now. i'm going to need a little while to parse this, probably just a couple of days

Lol, there’s a lot because I’ve added a test environment app. When you do the ng-packagr build it just packages up the library and leaves out the rest. We’ve been doing all our angular libraries this way so we can test it against our stacks. Welcome to angular in 2018.

Alright looks like everything works well. Magnificent PR! Ready to merge.


permissions_rmtree() unable to delete directories containing files owned by root

In some cases permissions_rmtree() silently fails to remove artifact:
$ ls -ld /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0 /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0/Turbo\ Boost\ Switcher.app/Contents/Resources/DisableTurboBoost.64bits.kext
drwxr-xr-x  3 user  staff  102 Oct 31 22:49 /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0
drwxr-xr-x  3 root   wheel  102 Sep  1  2014 /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0/Turbo Boost Switcher.app/Contents/Resources/DisableTurboBoost.64bits.kext
$ bin/brew-cask uninstall --debug turbo-boost-switcher | tail -6
Hbc::Artifact::App
==> Un-installing artifact of class Hbc::Artifact::App
==> Purging files for version 1.2.0 of Cask turbo-boost-switcher
==> Executing: ["/usr/bin/chflags", "-R", "--", "000", "#<Pathname:/opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0>"]
==> Executing: ["/bin/chmod", "-R", "--", "u+rwx", "#<Pathname:/opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0>"]
==> Executing: ["/bin/chmod", "-R", "-N", "#<Pathname:/opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0>"]
$ ls -ld /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0 /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0/Turbo\ Boost\ Switcher.app/Contents/Resources/DisableTurboBoost.64bits.kext
drwxr-xr-x  3 user  staff  102 Oct 31 22:49 /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0
drwxr-xr-x  3 root   wheel  102 Sep  1  2014 /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0/Turbo Boost Switcher.app/Contents/Resources/DisableTurboBoost.64bits.kext

All due to missing chown invocation here in /lib/hbc/installer.rb#L311-L336
if path.exist? and !tried_permissions
  begin
    # todo Better handling for the case where path is a symlink.
    #      The -h and -R flags cannot be combined, and behavior is
    #      dependent on whether the file argument has a trailing
    #      slash.  This should do the right thing, but is fragile.
    @command.run!('/usr/bin/chflags', :args => ['-R', '--', '000',   path])
    @command.run!('/bin/chmod',       :args => ['-R', '--', 'u+rwx', path])
    @command.run!('/bin/chmod',       :args => ['-R', '-N',          path])
  rescue StandardError => e
    unless tried_ownership
      # in case of ownership problems
      # todo Further examine files to see if ownership is the problem
      #      before using sudo+chown
      ohai "Using sudo to gain ownership of path '#{path}'"
      current_user = Etc.getpwuid(Process.euid).name
      @command.run('/usr/sbin/chown', :args => ['-R', '--', current_user, path],
                                      :sudo => true)
      tried_ownership = true
      retry # permissions
    end
  end
  tried_permissions = true
  retry # rmtree
end
end

chflags / chmod seems to succeed as long as files have correct mode and accessible, despite being owned as root:
ls -ld /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0 /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0/Turbo\ Boost\ Switcher.app/Contents/Resources/DisableTurboBoost.64bits.kext
drwxr-xr-x  3 user  staff  102 Oct 31 22:49 /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0
drwxr-xr-x  3 root   wheel  102 Sep  1  2014 /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0/Turbo Boost Switcher.app/Contents/Resources/DisableTurboBoost.64bits.kext
$ for i in "chflags -R -- 000" "chmod -R -- u+rwx" "chmod -R -N"; do sh -xc "$i /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0; echo $?"; done
+ chflags -R -- 000 /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0
+ echo 0
0
+ chmod -R -- u+rwx /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0
+ echo 0
0
+ chmod -R -N /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0
+ echo 0
0
$ ls -ld /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0 /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0/Turbo\ Boost\ Switcher.app/Contents/Resources/DisableTurboBoost.64bits.kext
drwxr-xr-x  3 user  staff  102 Oct 31 22:49 /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0
drwxr-xr-x  3 root   wheel  102 Sep  1  2014 /opt/homebrew-cask/Caskroom/turbo-boost-switcher/1.2.0/Turbo Boost Switcher.app/Contents/Resources/DisableTurboBoost.64bits.kext
$

We should be chowning not (only?) when chflags/chmod fails, but whenever rmtree() fails even if chflags/chmod are not erroring out.
Below should be a reasonable sequence covering variety of situations:

rmtree()
chflags/chmod as user before chown
rmtree()
sudo chown
rmtree()
chflags/chmod as user after chown
rmtree()

Closing in favour of #14845 (we can have the discussion there).


QuestOpenScholomance doesn't fit all the text into its objective

This quest doesn't exist anymore.


No files in client.upload()

IIUC, this will only work in case, if request Content-Type header isn't multipart/form-data
https://github.com/metarhia/impress/blob/a9f5db25ebce72596025f7dc5d16a62d860a9dd1/lib/client.js#L856-L860
Otherwise, if request Content-Type header is multipart/form-data, but the form was without files, client.files will be an empty object.
https://github.com/metarhia/impress/blob/a9f5db25ebce72596025f7dc5d16a62d860a9dd1/lib/application.js#L579-L586
If I'm not mistaken, neither if condition won't be true, nor the for loop in client.upload won't be executed, so that callback in client.upload won't be called.

Forms are not supported in 2.x, all client-server interactions, forms and file transfers should be implemented with RPC API, not http-style methods.


Animation is fixed and automatic on bar charts

Would be good to be able to control default animation via  props, so that it can be disabled if required or the timing changed

you can set the duration and delay props on the chart - setting duration to 0 will turn off the animation


Change gorm tags for postgres compatibility

Signed-off-by: revolyssup<EMAIL_ADDRESS>Description
This PR fixes #
Notes for Reviewers
Signed commits

[ ] Yes, I signed my commits.

There is no component\database issue tag in this repo. Please add.


$TERRAGRUNT_INCLUDE_DIR env variable seems not support glob curly braces

Describe the bug
Hello 👋
First, thanks for all you work on this awesome project 👍
I found a strange behavior with $TERRAGRUNT_INCLUDE_DIR environment variable, it does not seem to take into account curly braces in unix style globs, but using --terragrunt-include-dir seems working correctly.
FYI, using wildcards with env variable is working.
Is this behavior normal ?
Steps To Reproduce
TERRAGRUNT_INCLUDE_DIR="gcloud/{project-1,project-2}" terragrunt run-all init

Results with an empty output :
14:56:01.853 INFO   The stack at . will be processed in the following order for command init:

Expected behavior
14:57:58.123 INFO   The stack at . will be processed in the following order for command init:
Group 1
- Module ./gcloud/project-1
- Module ./gcloud/project-2

Versions

Terragrunt version: 0.68.0
OpenTofu/Terraform version: 1.9.7
Environment details (Ubuntu 20.04, Windows 10, etc.): Linux EOS 6.6.52-1-lts

Hello,
use , to separate values passed through env variables
TERRAGRUNT_INCLUDE_DIR="gcloud/project-1,gcloud/project-2" terragrunt run-all init

@denis256 Thanks for the workaround, but is it normal for the variable and the argument to function differently?

At the very least, the difference should be documented if they aren't (I haven't looked through the docs to confirm this).
Given that the workaround is fairly simple, I'm going to mark this issue as requesting community contributions, and marking it as preserved so that the issue doesn't go stale.
This is where flag splitting occurs, and where folks should start looking if they'd like to contribute a fix for this:
https://github.com/gruntwork-io/terragrunt/blob/af89a982c98d50d8a0015016c70f311462d5c57f/pkg/cli/slice_flag.go#L162

@yhakbar Thanks a lot for your detailed response 👍
I made a P.R for documentation.


[stable/unifi] fixing label-name migration

What this PR does / why we need it:
A previous change to bring the label-name usage up-to-standards resulted in some missed references to the new naming style. This PR fixes that miss
Checklist

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md

/assign @mcronce

/lgtm


R2D2 Feature extractor

@lxxue How did you handle the descriptor dimension when using superglue for matching?

@Matstah Sorry it doesn't support matching with superglue as they are trained on features of different dimensions. I think this is the same for other learned features like d2net.

Thanks a lot for the changes!


Add stricter check of front matter by jekyll

To check the YAML on the top of the Markdown files (now that most of the metadata are there)

Looks like it's just checking for valid yaml which is definitely useful. I'll see if I can write a plugin for doing stricter validation at some point maybe?


dashboard/config: enable LOCKF_DIAGNOSTIC on OpenBSD

/cc @blackgnezdo

Codecov Report

Merging #913 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #913   +/-   ##
=======================================
  Coverage   67.74%   67.74%
=======================================
  Files         111      111
  Lines       19896    19896
=======================================
  Hits        13478    13478
  Misses       5783     5783
  Partials      635      635

Continue to review full report at Codecov.

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


Add highlighting support for 256-color console Vim

This will allow others who use Vim in the terminal (at least, the ones with 256-color support, which is most of them) to see LÖVE functions highlighted beautifully without having to change any settings.
Color 206 is what Fish gives me as the closest color to #ff60e2. On my
computer, it shows up as #f15be7.

Thanks :+1:

This will also be fixed later by allowing people to set their own colors (see #8)


SAD Sprint #3

To update:

[x] #244
[x] #245
[x] #239
[x] #246

Updated the new domain diagram & database diagram to the Sprint report.
Closed since all tasks are marked DONE.


Error when clicking "Sign In" button twice quickly

What version of UAA are you running?
4.25.0
How are you deploying the UAA?
I am deploying the UAA

other (please explain)
Manually on a Windows Server 2012R2 on tomcat 8.5.32

What did you do?
Try to sign in to uaa with a valid username/password. Click on the "Sign In" button twice quickly.
What did you expect to see? What goal are you trying to achieve with the UAA?
Correct login to uaa
What did you see instead?
Regularly (not always, depends on the timing of the clicks) an error is displayed:

Captures of both calls to the uaa/login.do endpoint show that this might be a problem with the X-Uaa-Csrf cookie. First call looks alright, in the second call a wrong cookie value is used (host/usernames and passwords are redacted):
First call:

POST https://[host]/uaa/login.do HTTP/1.1
Host: [host]
Connection: keep-alive
Content-Length: 73
Cache-Control: max-age=0
Origin: https://[host]
Upgrade-Insecure-Requests: 1
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Referer: https://[host]/uaa/login
Accept-Encoding: gzip, deflate, br
Accept-Language: de-DE,de;q=0.9,en-US;q=0.8,en;q=0.7
Cookie: X-Uaa-Csrf=I8uqxilRqScjZMDj06EXMq; JSESSIONID=EF4F3436824F541F942CFD7B2494E4A0; Entitlement_autoLogin=autoWindows; ste_vi=vi_fv%3A1533628333383%7Cvi_hingedisclaimer%3A1%7Cvi%3Ac154db5221ef45da384331e4731bcd76; AMCV_EFB35E09512D2A530A490D4D%40AdobeOrg=1099438348%7CMCMID%7C51880686985386036808809113426940682270%7CvVersion%7C2.1.0%7CMCAID%7CNONE%7CMCAAMLH-1548757585%7C6%7CMCAAMB-1548757585%7Cj8Odv6LonN4r3an7LhD3WZrU1bUpAkFkkiY1ncBR96t2PTI%7CMCOPTOUT-1548159985s%7CNONE; AcceptCookies=Cookies accepted at: 22,Jan 2019 11:28:6; s_cc=true; s_sq=%5B%5BB%5D%5D

X-Uaa-Csrf=I8uqxilRqScjZMDj06EXMq&username=[...]&password=[...]

Closing due to inactivity.


ClientOption.TlsConfig.ServerName should not contain port number

I'm trying to connect to wss://ws.okx.com:8443/ws/v5/public as a client and get error remote error: tls: handshake failure.
Reason is this line https://github.com/lxzan/gws/blob/5c407ad8e047c7618f321de9b5180caf66002132/client.go#L59  should be
option.TlsConfig.ServerName = URL.Hostname()

because URL.Host includes port number, while URL.Hostname() does not

Let's manually assign a value to the serverName first, we'll fix that later.

Or use this commit hash for now
go get -u -v github.com/lxzan/gws@340485a22b22164fcea48ab8cc4e680a6f396100

Thanks for the fix, I was also having problems with okx

small problem


No num_docs optimization and lazy top K.

If num_docs is not required, there are many optimization we can run.
For instance, if we sort by docs we can often searhc on only one split and abort search within the split.
If we search by -date too, we can sort splits by order of their max_date, and stop search as soon as we get a guarantee that no docs will enter the top K.
We can hardcode these optimization for the moment, and revisit this if someone has some great formalism to get a proper distributed execution plan abstraction.

we've added some optimizations to search on less splits (but generally more than one) when num_docs isn't asked for.
we also added said optimization when sorting by date/-date/doc_id


Dynamic g-image tags are not lazy loaded

Description
Fetching data from Contentful and dynamically creating <g-image /> tags in a for loop disables lazy loading. All images created this way are loaded immediately on page load, whether they are in the viewport or not.
Steps to reproduce
Here is a repo demonstrating this bug. There are 2 pages, on the home page its demonstrating the <g-image> bug, and on the on the /about page I added a different image lazy loader and these images are lazy loaded correctly. This may help to solve the issue with <g-image>
Expected result
What should happen?
I expect the images to not load with the page unless they are in the viewport. The images should lazy load, just like they do if you create a <g-image> tag with a static image
Actual result
What happened.
The images created from the fetched Contentful data are not lazy loaded. They are loaded with the inital page load, heavily impacting performance and SEO scores (in case there are a lot of images it can get really bad)
Environment
Paste the information here as shown by gridsome info
System:
OS: Linux 5.4 Ubuntu 18.04.4 LTS (Bionic Beaver)
CPU: (8) x64 Intel(R) Core(TM) i7-4700HQ CPU @ 2.40GHz
Binaries:
Node: 10.19.0 - ~/.nvm/versions/node/v10.19.0/bin/node
Yarn: 1.22.4 - /usr/bin/yarn
npm: 6.14.5 - ~/.nvm/versions/node/v10.19.0/bin/npm
Browsers:
Chrome: 84.0.4147.89
Firefox: 78.0.2
npmPackages:
@gridsome/source-contentful: ^0.5.3 => 0.5.3
gridsome: ^0.7.0 => 0.7.19
npmGlobalPackages:
@gridsome/cli: 0.3.3
Note about environment: This happens to my colleagues who use a Macbook and Windows 10. It also happens on a production website
Note about me adding API keys in the repo: I don't care, I created this account solely for the purpose to demonstrate this bug.

I don't know if the <g-image> component is actually made for this purpose. I think it would make more sense to use the g-image directive in this case.
<template>
   ...
   <img
      :data-src="url"
      :data-srcset="srcset"
      :data-sizes="sizes"
      v-image
   />
   ...
</template>

<script>
import Image from "gridsome/app/directives/image";

export default {
  ...
  directives: {
    image: Image,
  },
  ...
}
</script>

Unfortunately this is not working correctly now if you use it without data-srcset and data-sizes.
A change in gridsome/app/directives/image.js would prevent this:
function loadImage(el) {
  ...
  if (srcset) el.srcset = srcset;
  if (sizes) el.sizes = sizes;
  ...
}

Thank you for your reply helloiamlukas. Could you please explain why would it make more sense using the directive instead of a component?
And if the <g-image> component was not meant for this use case, I think it should be mentioned in the docs - although honestly it doesn't make sense to me why it shouldn't work in this case. Outputting images dynamically from API data is not that uncommon. It is also obviously possible since the v-lazy-image can do this out of the box

As far as the documentation states, <g-image> is mainly to output progressive images. Lazy loading is just a part of this. That's why I thought the directive might be a good choice in your case.
But I agree with you that <g-image> could also do this out of the box. Maybe @hjvedvik can join this discussion?

I see, thank you for clarifying.
I think lazy loading dynamic images from an API would be a nice addition then - although I would kinda understand if the gridsome team disagrees. In case they disagree, I think it would be important to point that out in the docs.
For example, there is this alert stating only local images with relative URL paths will be compressed

📣 Only local, relative image paths will be compressed by Gridsome.

Maybe changing to something like this would be really informative

📣 Only local, relative image paths will be compressed and lazy lodaded by Gridsome.

@helloiamlukas Yes, I agree.  Right now it's only possible by passing a special object as the src property, which is very inconvenient. That object is created automatically for local images. But I think it would be much better if we could do something like this manually:
<g-image
  placeholder="data:image/svg+xml,......." <!-- or a URL to a super small image -->
  src="https://url.to/large-image.jpg"
  srcset="https://url.to/medium-image.jpg 480w, https://url.to/large-image.jpg 800w"
  sizes="(max-width: 600px) 480px, 800px"
/>

@hjvedvik That would be pretty awesome. And at the same time could we allow to disable srcsets? Maybe with :srcset="false" or :sizes="false"?

@hjvedvik That would be pretty awesome. And at the same time could we allow to disable srcsets? Maybe with :srcset="false" or :sizes="false"?

@hjvedvik Submitted a PR that makes this one work:
<g-image :src="{
        src: 'https://picsum.photos/200/300',
        size: {width: 200, height: 300},
        dataUri: 'data:image/gif;base64,R0lGODlhAQABAIABAP///wAAACwAAAAAAQABAAACAkQBADs=', // http://probablyprogramming.com/2009/03/15/the-tiniest-gif-ever
}" />

So, the above makes it easier to use g-image's lazy-loading feature for e.g. external images, but the main problem pointed out in this issue is the pre-processing/compression of local but dynamic assets.
I stumbled into this when adding local images in a loop, as seen in the OP's repo:
https://github.com/luka-bacic/reproduction-g-image-bug/blob/master/src/components/DynamicPictures.vue#L6
(in my case even with a static range: v-for="i in range(1, 32)")
My question is: is it possible to get the amazing pre-processing & responsiveness features of g-image also for dynamic src attributes?
Can someone maybe point me to how the images are pre-processed? I figured out the basic functionality of the AssetsQueue, but not why the dynamic rendered ones would not be added to the queue when the HTML is rendered at build time?


Could not determine the dependencies

Describe the bug
Trying to upgrade my version to the 0.5.3, the the firebase dynamic links wont to find the firebase dependencies.
To Reproduce
FAILURE: Build failed with an exception.

What went wrong:

Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'.

Could not resolve all task dependencies for configuration ':app:debugCompileClasspath'.
Could not find com.google.core.firebase:core.firebase-dynamic-links:16.1.8.
Required by:
project :app > project :firebase_dynamic_links

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 43s
Exception: Gradle task assembleDebug failed with exit code 1

Hi @eliasmeireles
Can you please provide your flutter doctor -v,your build.gradle from Flutter App->android your flutter run --verbose and a complete reproducible minimal code sample
Thank you


Fix typo in the 'sufix' argument for make_mead

Checklist:

[ ] Have you added a note in the CHANGELOG.md for your change if user-facing?
[ ] Have you added unit tests for your change?

My tiny contribution to PNC :) Noticed a typo in the help

@michalszynkiewicz  Does PiG use the suffix option?

Thanks for the change @tmckayus ! Just want to make sure that the other tools consuming pnc-cli are not affected :)

nah, we don't use make-mead at all

@tmckayus A tiny favour :D Could you also edit the CHANGELOG.md to include your chage in the changed section for unreleased? We use the changelog to let our users know about changes in the new release.

@michalszynkiewicz Thanks for checking! :)

@thescouser89 I thought I did, is there something missing from the current CHANGELOG.md?

@tmckayus A tiny favour :D Could you also edit the CHANGELOG.md to include your chage in the changed section for unreleased? We use the changelog to let our users know about changes in the new release.

@tmckayus SORRY my bad! My eyes sometimes lie to me! :D


[FALSE-POSITIVE] fislbxcentral.com

Domains or links
fislbxcentral.com
www.fislbxcentral.com
More Information
How did you discover your web site or domain was listed here?

Incorrectly marked as Phishing on Virustotal.com

Have you requested removal from other sources?
Please include all relevant links to your existing removals / whitelistings.
google.com - successful removal
cluster25 - pending
cyradar - successful removal
crdf - successful removal
avira - successful removal
Additional context
Add any other context about the problem here.
fislbxcentral.com and www.fislbxcentral.com are not phishing sites. They are legit urls for a verified credited business.  Please rescan and remove from phishing list.
:exclamation:
We understand being listed on a Phishing Database like this can be frustrating and embarrassing for many web site owners. The first step is to remain calm. The second step is to rest assured one of our maintainers will address your issue as soon as possible. Please make sure you have provided as much information as possible to help speed up the process.
Send a Pull Request for faster removal
Users who understand github and creating Pull Requests can assist us with faster removals by sending a PR to mitchellkrogza/phishing repository, on the falsepositive.list file

https://github.com/mitchellkrogza/phishing/blob/main/falsepositive.list
Please include the same above information to help speed up the whitelisting process.

Not listed by us
https://www.virustotal.com/gui/domain/www.fislbxcentral.com
https://www.virustotal.com/gui/domain/fislbxcentral.com


Create a native (modern) C++ implementation of prima (to also use in R)

There is interest in developing a native C++ implementation of the algorithms in prima. While there are C bindings for the Fortran library, being able to incorporate the algorithms into C++ projects natively perhaps through a header only library would simplify compilation in some settings and possibly provide some efficiency gains. One such use case is to provide access to the algorithms in R and in C++ projects in R (through Rcpp). Fortran functions can be used directly in R but they are a little inefficient as they require copies of all the arguments, whereas C++ functions can operate through pointers, and building a package that passes the strict CRAN standards that requires building the Fortran library and then linking through C is very difficult.
In terms of process, there are Fortran to C++ automatic translators, such as fable. The output can then be manually edited. I do not know what standard of C++ it targets, however, I would be keen to aim to make use of tools in the standard library C++17 or even C++2x, particularly the tools to support memory safety. However, support for C++2x is limited in some settings (for example, it is not possible to use C++20 in R with the Eigen library - a popular linear algebra library - because CRAN rules have significantly delayed updating the R version of Eigen).
So my proposal is to create a header-only native C++ implementation of prima targeting C++17 (at least initially). I also propose adding a pre-compiler flag to allow for a R build version if needed through Rcpp and then to incorporate it into an R package to submit to CRAN. I will add some suggestions below about the API: to be maximally useful the main class will ideally need to handle binding free functions, member functions, and const member functions for minimisation while having no overhead for function calls.

Hi @samuel-watson ,
Thank you very much for raising this point.
A native, modern, and high-quality C++ implementation of PRIMA is of extreme importance to us. Such an implementation may replace the modern Fortran implementation as the code that actually does the computation when people use PRIMA. This will substantially improve the availability and usability of PRIMA. The benefit cannot be overestimated.
Many thanks.
Best regards,
Zaikun

My knowledge of C++ is limited and outdated. So I cannot do much coding for this implementation and will have to rely on the community, but I will be more than happy to assist in other ways.
Before we start, I would like to draw your attention to the following.

PRIMA is designed to solve derivative-free optimization problems. In such problems, the objective/constraint functions are black boxes defined by expensive simulations. Each function evaluation can take seconds, minutes, hours, days, or even months. Consequently, the cost incurred inside the solver does not matter. See here for more elaboration. Keeping this in mind, when we need to choose between efficiency and simplicity&clarity of the code, we should always choose simplicity&clarity.

Something I wrote when I started to work on PRIMA:
https://fortran-lang.discourse.group/t/fortran-an-ideal-language-for-writing-templates-of-numerical-algorithms/2054

Coding as a way of documenting human knowledge:
https://everythingfunctional.wordpress.com/2021/01/19/communicating-with-whom/

Writing slow code:
https://fortran-lang.discourse.group/t/writing-slower-go-programs-bitfield-consulting/5733

Testing and verification play a central role in the development of PRIMA. We have to think about how to systematically verify the correctness of the C++ implementation.  See here for more elaboration.

I avoided using derived types (structures) in the Fortran implementation. T types are also nontrivial when interfacing with other languages.

Many thanks,
Zaikun

Hi @zaikunzhang thanks for the detailed information. Just a couple of responses
0. I think this is broadly correct; however, reducing overhead does have some real world benefit in some scenarios. My interest comes from statistical model fitting and with the old BOBYQA implementation I can end up calling the function thousands of times in a single fit for complex models. So the cumulative effect of avoidable overheads can add up. However, I think the guiding principle that the API simple and clear like you say is key - I think both are achievable here.
4. Does there exist a good test suite of problems we can translate as well? We can also add some C++ specific unit tests.
7. These are really helpful. C++ doesn't really have matrices natively (although this might change for C++23/26) so row/column major ordering is often down to how the user implements it. That being said, it probably makes sense to use a well tested and widely used linear algebra library to avoid any pitfalls in trying to implement matrices using standard containers, and to ensure the best algorithms are used for linear algebra operations. With that in mind, Eigen is probably the industry standard and in my experience has been excellent to use both in terms of ease of use, speed/efficiency, and error catching.

I think this is broadly correct; however, reducing overhead does have some real world benefit in some scenarios. My interest comes from statistical model fitting and with the old BOBYQA implementation I can end up calling the function thousands of times in a single fit for complex models. So the cumulative effect of avoidable overheads can add up. However, I think the guiding principle that the API simple and clear like you say is key - I think both are achievable here.

Right. It is an optimization problem:
minimize overhead subject to code clarity and simplicity.
In this problem, the constraints (code clarity and simplicity) should be satisfied before we minimize the overhead. However, this does not mean that we do not care about overhead.

Does there exist a good test suite of problems we can translate as well? We can also add some C++ specific unit tests.

CUTEst is the standard test set. However, I am not sure how it works with C++.

These are really helpful. C++ doesn't really have matrices natively (although this might change for C++23/26) so row/column major ordering is often down to how the user implements it. That being said, it probably makes sense to use a well tested and widely used linear algebra library to avoid any pitfalls in trying to implement matrices using standard containers, and to ensure the best algorithms are used for linear algebra operations. With that in mind, Eigen is probably the industry standard and in my experience has been excellent to use both in terms of ease of use, speed/efficiency, and error catching.

I agree that Eigen is a good choice, unless there is intrinsic support for array operations in the language.
Thank you.

A temporary solution could be a C++ API to the current Fortran implementation. If NLOPT could use the implementations within PRIMA, that would immediately make it much easier to use PRIMA from C++ programs, and it would be a drop-in-replacement for any programs currently using these algorithms though NLOPT.
Furthermore, the improved local optimizer implementations would immediately also improve some of the global optimization algorithms in NLOPT
For example I am currently using NLOPT to run the MLSL global optimizer, which requires the specification of a local optimizer. Being able to use the improved version of BOBYQA in NLOPT would likely help MLSL locate good solutions faster.

A C++ API would be wonderful as well.
Given that we already have a C API, how difficult is it to get things to work in C++? It has been a long time since I used C/C++ last time, so excuse me for my ignorance.

A C++ API would be wonderful as well.
Given that we already have a C API, how difficult is it to get things to work in C++? It has been a long time since I used C/C++ last time, so excuse me for my ignorance.

I do not see any actual API documentation there. Examples are nice, but are not a substitute for API docs. IMO there should be a list of functions which are intended for outside use, some brief text for each of them about what they do, and some sort of API stability declaration, eg. "We will not remove these functions without having a deprecation notice in at least one release". It does not have to be worded like that of course, but it should be documented what the "contact surface" is and not change that without notice.
Doxygen is a classic tool for generating documentation from C/C++ source files.
I have not actually tried using PRIMA yet, as I mostly need global optimization, hence my use of NLOPT's MLSL, which AFAIK can only use one of NLOPT's local optimizers as the local optimizer. So at the moment I cannot really derive a benefit from PRIMA.
But in general, calling C functions from C++ is very easy.

Sure, there are many many documentions missing, not only for the C API. I hope I had enough time work things out, in addition to my job, but I don't. For the moment I can only work on the Fortran backend and the  MATLAB interface, while relying on community efforts for other parts.

You can use the C interface in a C++ program as is, but the lack of an API documentation is right. However, my interest in a purely C++ version is to simplify compilation and facilitate incorporation of these really useful algorithms in more projects- I've given the examples of facilitating the use of these algorithms in programs for R as they could be added as a package for R as headers, even if only as an independent project. I would suggest API documentation should be raised as a separate issue.


Error running action

I'm getting the following error after updating to the latest version (1.1.1)
Run<EMAIL_ADDRESS>Started: bash /home/runner/work/_actions/rlespinasse/git-commit-data-action/1.1.1/entrypoint.sh
Error: Unable to process file command 'env' successfully.
Error: Invalid environment variable value. Matching delimiter not found 'EOF'

This is the action
      - name: Expose git commit data
        uses<EMAIL_ADDRESS>
Here's the failing run:
https://github.com/yoavain/easylists-for-pihole/runs/2153199930?check_suite_focus=true

I have reproduce this bug once, and now, all my other tests can reproduce it. Strange behavior.
I also put a repository to experiment with this issue https://github.com/rlespinasse/gcda-issue-11
As expected, when a commit have multiple lines in the body, the v1.1.1 do the job and the v1.1.0 fail.
The v1.1.0 don't fail when the body have only one line (like your case).
I will keep investigate that behavior.

:tada: This issue has been resolved in version 1.1.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

I finally reproduce and found the issue, the end delimiter wasn't setup correctly due to missing newline character.
Feel free to reopen this issue if the fix is not enough for your use case.


Minor restructuring of Python section, moved extension out of gmod code

Also added supporting files for automated running of Python tests (Dockerfile, travis.yml, docker-compose.yml). The plan is to do similar for the C++ code in future.

Added the strictest .pylintrc, so there's a lot of work to do to bring the code into line with the linter

Closed, got a different PR coming with new changes


Inline Group

[x] Refactor InlineBlockContext to be a generic InlineFieldContext
[x] Remove BlockField so there's only one set of InlineField

[x] Text
[x] Textarea
[x] Image

[x] Add a new InlineGroup

Examples
Misc. Fields Editable in Modal
A list of fields is provided. When hovering over the group an Edit icon will appear. That will open a modal that renders out the form with the given fields. All the fields are assumed to be referenced from the root of the form. This is an artificial grouping that doesn't reflect that data structure.
// Data
{
  title: "Hello World",
  createdAt: new Date(),
  updatedAt: new Date(),
  description: "This is a new world."
}

// Component
<InlineGroup
  fields={[
    { name: "createdAt", component: "date" },
    { name: "updatedAt", component: "date" },
  ]}
>
  Created At: {post.createdAt}
  Updated At: {post.updatedAt}
</InlineGroup>

Author Editable Inline
In this example the name is set to "author". This makes it so all inline fields within the group are referenced from inside the "author"
{
  title: "My New Post",
  author: {
    firstName: "Bob",
    lastName: "Ross",
  }
}

<InlineTextarea name="title" />
<InlineGroup name="author">
  First Name: <InlineTextarea name="firstName" />   // author.firstName
  Last Name: <InlineTextarea name="lastName" />    // author.lastName
</InlineGroup>

Author Editable from Modal
{
  author: {
    firstName: "Bob",
    lastName: "Ross",
  }
}

<InlineGroup name="author"
  fields={[
    { name: "firstName", component: "text" },
    { name: "lastName", component: "text" },
  ]}
>
  Written by {post.author.firstName}
</InlineGroup>

An Image Field Editable from Modal
const post = {
  image: {
    src: "Bob",
    alt: "Ross",
  }
}

<InlineGroup
  fields={[
    { name: "image.src", component: "image" },
    { name: "image.alt", component: "textarea" },
  ]}
>
  <img {...post.image} >
</InlineGroup>

I've updated the inline group UI to mirror the way blocks look, minus the additional actions. The focus is managed in a similar way, so it doesn't use the old focus ring which relies on input focus (doesn't always work). The way the settings cog is inset from the corner looks odd but it's consistent with blocks. This UI will likely be updated very soon.

In this example I'm passing 'focusRing={false}` to the inline textarea field to prevent a double focus wrapper.


fix(profiler): minor typo in profiler.md file

just typo
Description

It's just a typo, no big deal.
Related Issue(s)

Screenshots

docs are auto-generated, so you need to update the source code instead.

I honestly could not trace down where it is… Sorry for the trouble :-s


Test Mode: Minor UI Improvements

Change the color for delete test case icon (red x)
Stop auto-formatting and retain the format of test data (JSON) as the user enters and provide an option (small icon) to specifically format if the user clicks.

Rasied PR : https://github.com/hortonworks/streamline/pull/927


Unable to generate private_key.json for jwks.json from cognito

Hi,  Could you please let me know how can I get the private_key.json which is used to generate header value i.e, value for Authorization from the given jwks.json from cognito.  Thanks in Advance!!

Sorry ... was on holiday and came back with a pneumonia :( .... will look at it tonight.


autoPatchelfHook adds incorrect rpath dependency on packaged libc outputs

Describe the bug
The osquery.toolchain package contains compiler toolchain binaries (like clang) and libc libraries to be used by the compiler outputs.  When autoPatchelfHook is run on the package, it incorrectly adds the internal libc directory to the rpath of the compiler binaries. This causes the compiler binaries to break with an error message like this:
Inconsistency detected by ld.so: dl-call-libc-early-init.c: 37: _dl_call_libc_early_init: Assertion `sym != NULL' failed!

This problem was introduced in https://github.com/NixOS/nixpkgs/pull/307068 / https://github.com/NixOS/nixpkgs/commit/80be92660efcdacbaae1afd1d5d46c88968956ee.
This was done because the systemd package wanted to use autoPatchelfHook to add .note.dlopen dependencies to its rpath. But using autoPatchelfHook to do this had an undesired side effect of removing glibc from the rpath (for a reason I don't yet understand). So autoPatchelfHooks previous behavior to ignore libc dependencies was changed.
Potential solutions

Add a flag to autoPatchelfHook telling it to leave libc in the rpath if it's found. Enable this only on systemd.
Revert the libc change to autoPatchelfHook altogether, and instead modify findLibs and make-initrd-ng to automatically check libc.

Either solution would restore the old libc behavior of autoPatchelfHook for everyone else. The former would then add different code for systemd, and the latter would change a couple other programs to account for lacking this new behavior
@ElvishJerricco @flokli

Fixed by https://github.com/NixOS/nixpkgs/pull/332617