Converting a trained model to ONNX

HI! First of all, thanks for this helpful repository. Have you ever tried training your own model and then converting it to ONNX?
If I convert the released models and perform inference, it works fine. If I train my own model and use checkpoint_best.tar for conversion to ONNX, inference doesnt output any matches for the same input images. Thanks!

Hi @ikaftan, thank you for your interest in LightGlue-ONNX.
Unfortunately, I don't have any experience in training LightGlue models. However, even for the released pretrained models, the outputs do slightly differ between PyTorch and ONNXRuntime implementations, but I'm not sure what could've magnified this effect for custom trained models.

Thanks @fabio-sim for your fast reply! I will then try a couple more things and report here in case someone else also experiences the same issue.

@fabio-sim I notice the onnx models uses the opset 17. Is it possible to convert the model to use opset 15? I notice when I try to convert it to tflite to run on imx93 NPU, it complains about aten::grid_sampler.

Hi @ubergeekNZ, thank you for your interest in LightGlue-ONNX.
Unfortunately, the aten::grid_sampler op is required inside LightGlue.


Ambiguous use of 'borderWidth'

Hi,
I am trying to use the CHIPageControlAji but in this line:
pageIndicator.borderWidth = 1 // this should set the indicator border, right?
I get this error:
Ambiguous use of 'borderWidth'

Found this candidate (CHIPageControl.CHIBasePageControl)
Found this candidate (Material.UIView)

I am using :
Xcode 8.3.1
pod 'CHIPageControl', ' ~> 0.1.3'
pod 'Material', '~> 2.6.3'

@leosimas
It seems that Material uses extensions to UIKit classes, which unfortunately redefines a lot of default UIView properties.
In your particular case it's borderWidth property is redefined in
https://github.com/CosmicMind/Material/blob/master/Sources/iOS/Material%2BUIView.swift#L258
So, if you wish to continue to use both libraries in one project, the only solution to your problem
would be not to import Material to the same scope as CHIPageControl.
Also, i should notice that, while Material seems to provide a lot of functionality, the design of it's extensions to UIKit classes might lead to problem with a lot of different third party libraries.

I created another file without "import Material" still getting the same error.
If I find another solution I'll get back here, for now I'll just work without the borderWidth.
Thanks for the help, @mihailstumkins.

@leosimas Is there any solution for that you did find?

@barankaansert , not a good one. :(
I added the code into the project and made some changes.

this is still relevant


Scaleup of training with 2 GPUs is far from 2x

I compared the time it took to train the models using 2 GPUs vs. using 1 GPU, an the result was that the scaleup of training with 2 GPUs is far from 2x. In fact, the scaleup of training with 2 GPUs and a batch size of 2 is 1.17x, and 1.345x with 8 as batch size. What is happening? What is wrong?
I have looked the messages displayed after every iteration, an although "data" time does not vary with respect to the single GPU case, the "time" time is at least twice bigger in the 2 GPUs case.

"data" time: The time it takes to load the data.
"time" time: The time it take to do a whole iteration, including loading the data, forward and backward props.
Disclaimer: These confusing terms are the ones uses in the code.

The comparisons have been made using the same hardware configurations.

I have solved this efficiency problem.

The main problem: As the image size is randomly chosen, GPUs don't necessarily have the same image size during each iteration. Thus, GPUs have to wait for the slowest one (the one with the biggest image) every iteration, resulting in some of the GPUs being idle while waiting, hindering scaleup thereby.
The code makes use of DataParallel to implement data parallelism. However, it is no longer advisable to use this module (according to Pytorch official documentation). Instead, Distributed Data Parallel is said to be more efficient. Indeed, I have checked it with 2 GPU and synchronized batch normalization. Anyway, it stands to reason that this code is implemented using the former, since it is old to some extent.
The time measures used in the code ("data" and "time" time) might be useless: Most of cuda operations are unsynchronized, so this not the way forward to do time profiling.

I have solved this efficiency problem.

The main problem: As the image size is randomly chosen, GPUs don't necessarily have the same image size during each iteration. Thus, GPUs have to wait for the slowest one (the one with the biggest image) every iteration, resulting in some of the GPUs being idle while waiting, hindering scaleup thereby.
The code makes use of DataParallel to implement data parallelism. However, it is no longer advisable to use this module (according to Pytorch official documentation). Instead, Distributed Data Parallel is said to be more efficient. Indeed, I have checked it with 2 GPU and synchronized batch normalization. Anyway, it stands to reason that this code is implemented using the former, since it is old to some extent.
The time measures used in the code ("data" and "time" time) might be useless: Most of cuda operations are unsynchronized, so this not the way forward to do time profiling.


Custom Validation message not being returned

jquery-validate ver: 1.19.0
Browser: Latest Chrome
I have the following custom validation method:
$.validator.addMethod('switchRequire', function(value, element) {
  if ($('#' + element.id + 'Check').bootstrapSwitch('state')){
   if((parseInt(value)) > 0){
     return true;
   }
   else {
     return false;
   }
 }
 else {
   return true;
 }
}, 'ErrorMsg');
The method works but returns "0" as the error message, which is the value, not the error.
Calling method from .validate:
fieldName: {   switchRequire: true }

I struggled with the custom method and message myself until I realized that i had the title attribute of my input fields set and it showed that instead of the message, maybe this helps?


Bug Report: inferred_value doesn't propagate to the subscript of a list

The following code demonstrates the bug:
a = [1,2,3]

if a[:0]:
	print("// bad")

import pyanalyze
def main():
	tree = pyanalyze.ast_annotator.annotate_file(__file__)
	print(repr(tree.body[1].test.inferred_value))			# UnresolvedValue()
	print(repr(tree.body[1].test.value.inferred_value))		# KnownValue(val=[1, 2, 3])

main()

The issue from my standpoint, is that when I ask for the type of the if's condition, I get None instead of list, even though there should be no doubt that it is a list.
I'd be willing to attempt to fix it myself, if you could give me a few pointers.
Btw,
Your library has been very useful to me so far, to establish call graphs and discern types, so thank you!

Thanks for the report! The issue here is actually that pyanalyze doesn't deal with list.__getitem__ at all. This is basically an instance of #64, a place where it unexpectedly isn't able to infer something.
Subscripts get handled in https://github.com/quora/pyanalyze/blob/master/pyanalyze/name_check_visitor.py#L3327. It has some special cases for SequenceIncompleteValue, so you'll see int subscripts work for some cases where pyanalyze has a precise type, but for general lists it will just fall back to the return type of list.__getitem__. Because that method is overloaded in typeshed (https://github.com/python/typeshed/blob/master/stdlib/builtins.pyi#L776), pyanalyze doesn't know what to do with it and just returns Any.
This isn't exactly going to be trivial to fix. I see two ways out:

Add support for overloads (#182). That's going to be a pretty big project. I'll probably take it on after I get protocols working, but it may be a while.
Add an implementation function for list.__getitem__ in implementations.py, similar to the existing one for dict.__getitem__. Doing this will allow us to get rid of some more special casing in name_check_visitor.py. We'd also want a very similar impl for tuple.__getitem__.

The second option shouldn't be too hard if you're interested in taking it on. I'd recommend looking at the existing implementation functions for dict.__getitem__ and other list methods as examples.
(Also, sorry for not responding earlier; I was out of town.)

#241 should fix this.

Nice!
I'm glad to see there's so much recent activity. Mind if I ask what's your new goal?

An internal use case came up that required some pyanalyze changes. While implementing that I noticed a bunch of other bugs that affected us, so I decided to fix them. The one from #242 is especially nasty; I still have a lot of things I need to fix internally before I can merge that one. I'm thinking of cutting a release once I get all these resolved.


⚠ Bofrost.at has degraded performance

In 5916ffc, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1676 ms

Resolved: Bofrost.at performance has improved in 5e2069d after 6 minutes.


LDAP certificate issue

Hi,
With the introduction of uaa-release a breaking change to the UAA has been added. It is no longer possible to configure an LDAP store with a self-signed certificate.
The problem is that the following line references a folder that does not exists:
https://github.com/cloudfoundry/uaa-release/blob/develop/jobs/uaa/templates/install_crt#L11
When UAA is started it fails to store the certificate and communication with the LDAP is not allowed.
This problem can be fixed by replacing the above line with the following:
TRUST_STORE_FILE=$JDK_HOME/jre/lib/security/cacerts

(Notice the added jre segment)
It seems that with the introduction of uaa-release an update was done on the JDK:
https://github.com/cloudfoundry/cf-release/blob/v226/packages/uaa/spec#L7-L9
https://github.com/cloudfoundry/uaa-release/blob/v4/packages/uaa/spec#L6-L8
This newer JDK package has a different folder structure and the security folder is now located in the jre subfolder of the JDK.
It seems strange that this would happen for just a bug-fix increment of the JDK.
Either the install_crt script file needs to be adapted or the packaging (if custom) of the JDK needs to be restored to its old state.

Fixed in V12 and above


Word wrapping caused on theme color selectors in longer-worded languages

In Russian, in the latest version of BookStack there is a problem with word wrap (seen in the screenshot). In other languages, the problem also has a place to be. Please correct layout.
The problem is solved by disabling the class.

At this point, a slight flaw in the form of different indents.

Thanks for reporting these @Statium. There will naturally be some wrapping of blocks like this dependant on text length and fonts in use but I am happy to address it if it's a quick win.
I've just pushed a commit to align the spacing as shown in your second screenshot. Since that has been addressed, and since your pull request addressed the first screenshot, I'll close this off. All these changes are in master to be part of the next patch release.


Option to Disable or configure default plugins

I am trying to use this gem for a text editor. In the  view of the text, the page is not looking good because all the lines are being rendered as one line, instead of paragraph blocks.

(Screen shots of text inside the editor going... and going... and going....)
I looked up configurations for CKEditor and CodeMirror, but I still am not sure how to configure rich settings to do that. I want to either turn off codemirror plugin (most idea), or have the lines render break into new line within defined textarea width. Can I make configuration changes to CKEditor/Codemirror for this particular feature?

Hey @jimun,
can I see how you integrated the rich plugin (Gemfile.lock, admin-model and so on)?


Feat/282 line width scaling

Fixes #282. This fix needs to be reviewed with Julius to confirm if the adjusted line widths are good.

Thanks for the PR!
Any successful deployments (not always required) will be available below.

api
admin
public

Once merged, code will be promoted and handed off to following workflow run.

Main Merge Workflow

Work has been merged in a different PR.


UnicodeEncodeError: 'charmap' codec can't encode characters in position 5-8: character maps to

how to fix it bro
$ python mega.py
Traceback (most recent call last):
File "C:\Users\AbygaileJhonson\mega\mega.py", line 47, in
print(banner)
File "C:\Users\AbygaileJhonson\AppData\Local\Programs\Python\Python310\lib\site-packages\colorama\ansitowin32.py", line 47, in write
self.__convertor.write(text)
File "C:\Users\AbygaileJhonson\AppData\Local\Programs\Python\Python310\lib\site-packages\colorama\ansitowin32.py", line 170, in write
self.write_and_convert(text)
File "C:\Users\AbygaileJhonson\AppData\Local\Programs\Python\Python310\lib\site-packages\colorama\ansitowin32.py", line 195, in write_and_convert
self.write_plain_text(text, cursor, start)
File "C:\Users\AbygaileJhonson\AppData\Local\Programs\Python\Python310\lib\site-packages\colorama\ansitowin32.py", line 203, in write_plain_text
self.wrapped.write(text[start:end])
File "C:\Users\AbygaileJhonson\AppData\Local\Programs\Python\Python310\lib\encodings\cp1252.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode characters in position 5-8: character maps to

try running export PYTHONIOENCODING=utf8 in your terminal then running the script again

try running export PYTHONIOENCODING=utf8 in your terminal then running the script again

Traceback (most recent call last):
File "C:\Users\AbygaileJhonson\Desktop\Mega-Account-Creator\mega.py", line 55, in
driver = webdriver.Chrome(path)
File "C:\Users\AbygaileJhonson\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 69, in init
super().init(DesiredCapabilities.CHROME['browserName'], "goog",
File "C:\Users\AbygaileJhonson\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\chromium\webdriver.py", line 89, in init
self.service.start()
File "C:\Users\AbygaileJhonson\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\common\service.py", line 81, in start
raise WebDriverException(
selenium.common.exceptions.WebDriverException: Message: 'chromedriver.exe' executable needs to be in PATH. Please see https://chromedriver.chromium.org/home

try running export PYTHONIOENCODING=utf8 in your terminal then running the script again

[Error] An error occured while Creating a Account Reasons are [Names you have entered in emails.txt is taken]
[EXIT] Press Enter to Exit >[16720:9804:0809/215905.527:ERROR:util.cc(127)] Can't create base directory: C:\Program Files\Google\GoogleUpdater

you have to go to emails.txt and generate usernames using the link http://generator.my-addr.com/generate_usernames-free_username_generator_online_tool.php then paste them there and try again, also make sure to have google chrome installed

you have to go to emails.txt and generate usernames using the link http://generator.my-addr.com/generate_usernames-free_username_generator_online_tool.php then paste them there and try again, also make sure to have google chrome installed

i did it bro, the results are the same, what version of the chrome driver are you use?


CitadelDAO - Nullability implicitly modelled.

Code Location:

https://github.com/CivMC/Citadel/blob/23a41a90335ad6d96fd2712df8cea26a1c0ed5a1/paper/src/main/java/vg/civcraft/mc/citadel/model/CitadelDAO.java#L247
https://github.com/CivMC/Citadel/blob/23a41a90335ad6d96fd2712df8cea26a1c0ed5a1/paper/src/main/java/vg/civcraft/mc/citadel/model/CitadelDAO.java#L253
https://github.com/CivMC/Citadel/blob/23a41a90335ad6d96fd2712df8cea26a1c0ed5a1/paper/src/main/java/vg/civcraft/mc/citadel/model/CitadelDAO.java#L265

Issue:
Nullability should be explicitly modelled in modern code.

Solution:
Use java.util.Optional for this purpose.

I'm closing this out as something that we won't fix. It could be revisited in the future, but it's not within our capacity to work on right now.


Using target specification causes a panic

In some unwrap I can't track down.
This only occurs if rustc would consider the target specification "valid", except it seemingly never actually gets to running rustc, thus this makes no sense whatsoever.
$ cat test.json
{
        ...
}
$ cargo build --target test
thread '<main>' panicked at 'called `Option::unwrap()` on a `None` value', C:\bot\slave\nightly-dist-rustc-win-64\build\src\libcore\option.rs:361
$ cat test2.json
invalid
$ cargo build --target test2
An unknown error occurred

(In this case the unknown error is the target spec being invalid, which it'll tell you with --verbose)

This isn't limited to target specifications: when I try to target le32-unknown-nacl, which doesn't use a target spec, I get (I believe) the same unwrap() panic.

I managed to track it down to here
https://github.com/rust-lang/cargo/blob/4a0154d4201d99bb7b091764a32c062edef53ff4/src/cargo/ops/cargo_rustc/context.rs#L101-L116
As you can see that code is pretty much complete bonkers. And it turns out someone adjusted the warning message slightly, breaking it completely and triggering this unwrap.
I'd fix it myself if I could get cargo to build on the latest Rust. But currently that doesn't work either and will require updates to nearly every library cargo uses.

I've almost completed an upgrade to master(ish) (a cargo update
almost fixes everything anyway); I can push to my fork so you can test if
you'd like (or you can push your changes).
On Tue, Jan 13, 2015 at 10:52 AM, Tobba<EMAIL_ADDRESS>wrote:

I managed to track it down to here
https://github.com/rust-lang/cargo/blob/4a0154d4201d99bb7b091764a32c062edef53ff4/src/cargo/ops/cargo_rustc/context.rs#L101-L116
As you can see that code is pretty much complete bonkers. And it turns out
someone adjusted the warning message slightly, breaking it completely and
triggering this unwrap.
I'd fix it myself if I could get cargo to build on the latest Rust. But
currently that doesn't work either and will require updates to nearly every
library cargo uses.
—
Reply to this email directly or view it on GitHub
https://github.com/rust-lang/cargo/issues/1159#issuecomment-69776892.

The warnings strings now seem to be
dropping unsupported crate type `"dylib"`
dropping unsupported crate type `"bin"`

I'll push/test the change on that branch later today if you'd like

kk, cool. Cleaning up old Encoder/Decoder/etc usage now.
On Tue, Jan 13, 2015 at 11:05 AM, Tobba<EMAIL_ADDRESS>wrote:

The warnings strings now seem to be
dropping unsupported crate type "dylib"
dropping unsupported crate type "bin"
I'll push/test the change on that branch later today if you'd like
—
Reply to this email directly or view it on GitHub
https://github.com/rust-lang/cargo/issues/1159#issuecomment-69779414.


Find a normal session for TimetableItemDetailScreenTest

Idea Description
In this PR, we are having welcome session in screenshots. However, I would like to see the normal session screenshots.
So could we do SessionsAllResponse.fake().sessions.first{ it.xxxxType == Normal }.id   or something to find the normal session?
https://github.com/DroidKaigi/conference-app-2023/pull/822

Reference images and links
https://github.com/DroidKaigi/conference-app-2023/blob/39f785294d84e6e44017f6160e2e4438e80ab923/core/testing/src/main/java/io/github/droidkaigi/confsched2023/testing/robot/TimetableItemDetailScreenRobot.kt#L93

can i do this? 🤚 already create PR


pendingTimer when testing with SentryNavigatorObserver on sentry_flutter 8.2.0

Platform
Flutter Mobile
Obfuscation
Enabled
Debug Info
Enabled
Doctor
[✓] Flutter (Channel stable, 3.22.1, on macOS 14.5 23F79 darwin-arm64, locale en-GB)
    • Flutter version 3.22.1 on channel stable at /Users/alestiago/Developer/flutter/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision a14f74ff3a (4 weeks ago), 2024-05-22 11:08:21 -0500
    • Engine revision 55eae6864b
    • Dart version 3.4.1
    • DevTools version 2.34.3

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at /Users/alestiago/Library/Android/sdk
    • Platform android-34, build-tools 33.0.0
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15C500b
    • CocoaPods version 1.13.0

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2021.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)

[✓] IntelliJ IDEA Ultimate Edition (version 2023.1.4)
    • IntelliJ at /Applications/IntelliJ IDEA.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] IntelliJ IDEA Community Edition (version 2023.1.4)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] VS Code (version 1.89.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.90.0

[✓] Connected device (3 available)
    • macOS (desktop)                 • macos                 • darwin-arm64   • macOS 14.5
      23F79 darwin-arm64
    • Mac Designed for iPad (desktop) • mac-designed-for-ipad • darwin         • macOS 14.5
      23F79 darwin-arm64
    • Chrome (web)                    • chrome                • web-javascript • Google Chrome
      125.0.6422.176

[✓] Network resources
    • All expected network resources are available.

• No issues found!

Version
8.2.0
Steps to Reproduce

Create a Flutter Application:

 flutter create my_app --platforms ios,android

Add package:sentry_flutter  8.2.0 as a dependency:

flutter pub add sentry_flutter:8.2.0

Update lib/main.dart to initialise Sentry:

Future<void> main() async {
  runZonedGuarded(() async {
    await SentryFlutter.init(
      (options) {
        options.dsn =<EMAIL_ADDRESS>      },
    );

    runApp(const MyApp());
  }, (exception, stackTrace) async {
    await Sentry.captureException(exception, stackTrace: stackTrace);
  });
}

Update the _incrementCounter function to navigate somewhere:

 void _incrementCounter() {
    Navigator.push(context, MaterialPageRoute(builder: (context) {
      return const Text('Hello Sentry');
    }));
  }

Update the test in widget_test to navigate and assert for the text:

 testWidgets('Counter increments smoke test', (WidgetTester tester) async {
    await tester.pumpWidget(const MyApp());

    await tester.tap(find.byIcon(Icons.add));
    await tester.pumpAndSettle();

    expect(find.text('Hello Sentry'), findsWidgets);
  });

Run the test, the test should succeed.

fluter test

Add a SentryNavigatorObserver to the MaterialApp in main.dart:

MaterialApp(
  navigatorObservers: [
    SentryNavigatorObserver(),
  ],
  // other parameters

Run the test again, the test now fails.

fluter test

The test fails due to:
The following assertion was thrown running a test:
A Timer is still pending even after the widget tree was disposed.
'package:flutter_test/src/binding.dart':
Failed assertion: line 1527 pos 12: '!timersPending'

Change the package:sentry_flutter version from 8.2.0 to 8.1.0:

flutter pub add sentry_flutter:8.1.0

Run the test again, now the test succeeds.

fluter test

Expected Result
The test succeeds in package:sentry_flutter v8.1.0, it should also succeed in v8.2.0.
Actual Result
A test fails in package:sentry_flutter v8.2.0, but not in v8.1.0.
Are you willing to submit a PR?
None

Thanks for the issue and the detailed instructions! We'll have a look

For some quick fix you can wrap it in a runAsync
    await tester.runAsync(() async {
      await tester.pumpWidget(const MyApp());

      await tester.tap(find.byIcon(Icons.add));
      await tester.pumpAndSettle();

      expect(find.text('Hello Sentry'), findsWidgets);
    });

the reason for the failure is the change from
    return _appStartCompleter.future;

to
    return _appStartCompleter.future
        .timeout(_timeoutDuration, onTimeout: () => null);

still trying to figure out if therere is a way around that

@buenaflor any updates regarding a proper fix to this issue besides the quick-fix?

Sorry :bow: I haven't come to this issue yet. I'll keep you posted

Just chiming in again since it's been over a month, are there any updates?

hey, we're currently looking at re-designing the parts that are affected by these app start completers since this has also caused some issues in other areas for some users.

hey this is going to be addressed as part of improving the app start integration so this should be fixed soon :)


Improve readability of Paginator#initialize

I had a difficult time trying to understand what was happening within the Paginator#initialize method.
So made an attempt to ease the process for a future reader.

Ok, and now I have a difficult time to understand your changes. What is the best option here?
This code has some test cover but not nearly enough to ensure that the rewritten code does not break basic behavior.
This classifies as changes that bring no user benefits, I'm afraid I must decline this addition :/

What is the best option here?

Leverage the beauty of Ruby. Use predefined syntactic-sugar to replace verbose syntaxes and verbose syntaxes to clarify statements.
Few examples used here:

String#empty? instead of String#length >= 0
attr_reader initializes an instance_var with value nil. Therefore, @ivar = loc_var == 'foo' ? 'bar' : nil can be simplified to @ivar = 'bar' if loc_var == 'foo'
@variable = foo ? nil : ( lorem ? ipsum : dolor ) simplified to:unless foo
  @variable = if lorem
                return ipsum
              else
                return dolor
              end
end

OK, sounds reasonable, I'll have a better look at this tonight and brush up on my Ruby skills ;)

Ah darn I did a stupid, the PR branch has been deleted and I can't reopen this

The branch has been restored.. Glad you're taking a second look at this..

I split up part of the logic into a another private method to reduce the "Cognitive Complexity" score reported by CodeClimate..


[pt-br] Tradução de metricas para Portugues Brasil

@edsoncelio pode dar uma olhada?

@cassioliveiram thank you so much for your contribution!!
Unfortunately, we must mark this as duplicated because this one (#5120) was opened first and is almost ready to be merged.
Could you close, please?

Thank you for the inputs @theletterf , seems like this one is duplicated from https://github.com/open-telemetry/opentelemetry.io/pull/5120, I'll refer you comments there just for guarantee.


Allow to specify ticket system and ticket number for activation request

Welcome

[X] Yes, I've searched similar issues on GitHub and didn't find any.

Is your feature request related to a problem? Please describe
In my case, I am required to provide the ticket system and the ticket number for each PIM request.
Describe the solution you'd like
Accept ticket system and ticket number as additional flags for the activation request.
For the ticket system, it would be nice to have it in the config file as well, since it is basically static.
Describe alternatives you've considered

Additional context
No response

This has now been implemented on the main branch. You may also specify these options in the configuration file


[1] README - Add a proper description of the project

Hi Vishal, please provide description or repo link .


ES 存储模式，索引名字是什么

Please use English. And the name of entities has been defined through OAL or in the codes.


builtins.AttributeError: 'dict' object has no attribute 'translate'

Hi
I have a problem
when I get the new code ,and run the following code
from chatterbot import ChatBot
from chatterbot.trainers import ChatterBotCorpusTrainer
'''
This is an example showing how to create an export file from
an existing chat bot that can then be used to train other bots.
'''
chatbot = ChatBot('Export Example Bot')
First, lets train our bot with some data
trainer = ChatterBotCorpusTrainer(chatbot)
trainer.train('chatterbot.corpus.english')
Now we can export the data to a file
trainer.export_for_training('./my_export.json')
I get the error in  the file : stemming.py
def get_stemmed_word_list(self, text):
    # Remove punctuation
    text = text.translate(self.punctuation_table)

the error is as following,Could you help me ,thank you.:
￼ File "F:\xxxxx\robot\ChatterBot-master\test.py", line 14, in
trainer.train('chatterbot.corpus.english')
￼ File "F:\xxxx\robot\ChatterBot-master\chatterbot\trainers.py", line 149, in train
statement_search_text = self.stemmer.get_bigram_pair_string(text)
￼ File "F:\xxx\robot\ChatterBot-master\chatterbot\stemming.py", line 59, in get_bigram_pair_string
words = self.get_stemmed_word_list(text)
￼ File "F:\xxxxxx\robot\ChatterBot-master\chatterbot\stemming.py", line 27, in get_stemmed_word_list
text = text.translate(self.punctuation_table)
builtins.AttributeError: 'dict' object has no attribute 'translate'

Hi
The error is in the function : get_stemmed_word_list
I checked the varible   text, it is the str ,but when the error happened.
text
'Artificial Intelligence is the branch of engineering and science devoted to constructing machines that think.'
type(text)
<class 'str'>
 I found the text  using  type(text )   it is dict ,why? Thank you.

type(text)
<class 'dict'>
text
{"He's best known for the Dune novels, but he wrote more than that.  Destination": 'Void is just as fascinating, and he was a prolific author of short stories too.'}

Hi
The error is in the function : get_stemmed_word_list
I checked the varible text, it is the str ,but when the error happened.
text
'Artificial Intelligence is the branch of engineering and science devoted to constructing machines that think.'
type(text)
<class 'str'>
I found the text  using  type(text )   it is dict ,why? Thank you.
type(text)
<class 'dict'>
text
{"He's best known for the Dune novels, but he wrote more than that. Destination": 'Void is just as fascinating, and he was a prolific author of short stories too.'}
And I checked the top function: train
....
for text in conversation:
statement_search_text = self.stemmer.get_bigram_pair_string(text)
....
I found the conversation is not good. I don't know this data is ok? Could you help me ,thank you.
len(conversation)
2
type(conversation[0])
<class 'str'>
type(conversation[1])
<class 'dict'>

Hi
The error is in the function : get_stemmed_word_list
I checked the varible text, it is the str ,but when the error happened.
text
'Artificial Intelligence is the branch of engineering and science devoted to constructing machines that think.'
type(text)
<class 'str'>
I found the text using type(text ) it is dict ,why? Thank you.
type(text)
<class 'dict'>
text
{"He's best known for the Dune novels, but he wrote more than that. Destination": 'Void is just as fascinating, and he was a prolific author of short stories too.'}
And I checked the top function: train
....
for text in conversation:
statement_search_text = self.stemmer.get_bigram_pair_string(text)
....
I found the conversation is not good. I don't know this data is ok? Could you help me ,thank you.
len(conversation)
2
type(conversation[0])
<class 'str'>
type(conversation[1])
<class 'dict'>
conversation[0]
'frank herbert'
conversation[1]
{"He's best known for the Dune novels, but he wrote more than that.  Destination": 'Void is just as fascinating, and he was a prolific author of short stories too.'}

Hi,  I temply modify it by the following code ,thank you.
text = text.translate(self.punctuation_table)
change to
text = str(text).translate(self.punctuation_table)
It is ok.


remove gc allocation from std.algorithm.levenshteinDistance()

replaced gc allocation of internal work buffer with realloc/free
levenshteinDistanceAndPath() still allocates gc memory for the return value.
improved unit test coverage

Nice one, I actually filed a bug report for that not too long ago.
Issue 13834 – make levenshteinDistance @nogc

I thought about having it use a stack buffer with failover to malloc, as suggested in the bugzilla issue, but I have no experience with real world levenschtein usage and don't know what a typical size would be.
If you want to do the output range as a followon PR, that would be nice.

I think malloc will be fine for now as the operation is pretty complex compared to the cost of allocating/freeing.

lgtm modulo nits

Auto-merge toggled on

Nice work, thanks! One more to go and std.algorithm will be gc-free!!

Nice work, thanks! One more to go and std.algorithm will be gc-free!!

Wow, which one?


test pre-script

Type of Change
feature or bug fix or documentation or others
API changed or not
Description
detail description
JIRA ticket: xxx
Expected Behavior & Potential Risk
the expected behavior that triggered by this PR
How has this PR been tested?
how to reproduce the test (including hardware information)
Dependency Change?
any library dependency introduced or removed

test only


[New Dashboard] Adapt current dashboard's request interceptor

As of GDPR and MFA changes, current dashboard has an interceptor to redirect users to /login or other specific routes when any AJAX request fails with 403 error.
I believe that the mechanism implemented for that wouldn't work with our new dashboard approach, but let's revisit it and make sure that the feature is working as it was thought before.

Is this still relevant @jesusbotella?

Merged!


chore(deps): update k8s.io/utils digest to 24370be

This PR contains the following updates:

Package
Type
Update
Change

k8s.io/utils
require
digest
3ea5e8c -> 24370be

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>0
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.2%) to 60.895%

Totals

Change from base Build<PHONE_NUMBER>3:
0.2%

Covered Lines:
1238

Relevant Lines:
2033

💛  - Coveralls


Defining and applying styleAs on the fly?

Consider this:
object TestCss extends StyleSheet.Inline
{
  import dsl._

  val testBackground = bg("awesome-background", "https://placehold.it/2000x2000")

  def bg(className: String, imgUrl: String) = style(
    addClassName(className),
    backgroundImage := s"url($imgUrl)"
  )
}

Somewhere else:
html(
    ...
    section(TestCss.testBackground, "Testing the background")...
)

This works like a charm
But what about a little more dynamic backgrounds?
  val otherBackground = TestCss.bg("another-one", "http://url-to-awesome-image")
    ...
    section(otherBackground, "Testing the background")

Sadly this does not work.
I guess it's because of some magic going on in StyleSheet.Inline... but, can I somehow get this working easily? Am I missing something?
What I basically want is to dynamically generate the StyleA and apply it. Although otherBackground is indeed a StyleA the rendered html looks like this:

Testing the background
 and neither TestCss-bg-2 nor another-one are actually a style applied
Maybe this isn't even valid at all and not possible in ScalaCSS. I merely thought I'd ask before dying dumb.

Hi @Unmoving, no ScalaCss doesn't support on-the-fly styles. The stylesheet needs to be closed. You can still have dynamic styles so long as they're total and deterministic, see http://japgolly.github.io/scalacss/book/features/stylef.html


How can i check free functions?

Hey i have really 'not smart' query: I assume not all functions/methods from this library are free, due to extensions reliability? How can I distinguish them?

Hello @KMastalerz ,
First, I would recommend you to add this options to make sure that any paid features will throw an error right away:
EntityFrameworkManager.IsCommunity = true

You can see a good list of all free and paid features in the download page: https://entityframework-plus.net/download
In short, what is paid is:

BatchSaveChanges (for EF6)
Any features with "Bulk" inside of the name such as BulkInsert, BulkSaveChanges

Let me know if that answer correctly to your question.
Best Regards,
Jon

Yes, I think it sums it up :)

Thanks for quick response 👍


run additional beaker nodesets under travis

@petems Just FYI - I broke the centos-6-docker with my PR that replaced camptocamp/archive with puppet/archive.  It's pretty clear that we need to make that test configuration mandatory.

Thank you for this pull request! Please check this document for how the Jenkins project handles pull requests.


Fix dedup repeat time check misses peer wait consideration

If we don't consider peer wait, dedup repeat interval passed or not check is not accurate. Especially sometimes the repeat time is very small and smaller than the max peer wait time will cause duplicated alerts from alertmanager peer.

got some problems, close it


Fix updating

Fix updating so refresh works 100% for every screen.

Might be some work left to do on progresstracking, but no big deal.


App disappears from home screen on update

This happens almost every time there's an update, but it only seems to occur with this app. I have to re-add the shortcut to my home screen or whatever every time the app updates. Luckily it leaves a nice gaping hole where it used to be so I don't forget where it was.

Out of curiosity, what version of the app do you have installed right now, despite being in the beta program?
I don't follow the standard beta -> production promotion cycle that the Play Store has (due to needing a simple way to show the beta window), so production releases are usually a fresh build, which means the app version will be higher than the beta track until I upload something there. I wonder if the Play Store forces an update to the highest APK version.

I have v.1.3.61, from the Play Store. I have automatic updates turned on, so I know there's been an update to the Play Store whenever I see that the app has vanished from my screen. I assume it's installing the latest beta version, but maybe not?

o.
Ok yeah it seems like the Play Store always wants to update to the highest version code then, which would be production in this case. The beta version should always have the black window with the WARNING THIS IS A BETA VERSION OF KAKU message appear first. Looks like I'll have to change the way I deploy then.

Addressed by ffe226ef936a9501261d935074158eebdd5a8067


React-bootstrap-table2-toolkit has non printable characters in csv output.

[@AllenFang](url

)
I am using React-bootstrap-table2-toolkit for downloading the csv. But am getting some non printable characters in the first column header.  I was using react-csv-2, but it was not supported in IE. So I am using the toolkit package. There I noticed that removing '\uFEFF' from line 68 of exporter.js, solves the issue. Any update on this ?

Let me check this, thank

https://react-bootstrap-table.github.io/react-bootstrap-table2/blog/2018/09/30/version-bump.html
Fixed in<EMAIL_ADDRESS>


Don't count docs in the language stats.

Minor cosmetic annoyance: Github's language stats on the front page of the repo are including python/css/etc files from the docs/ folder. Adding this git attribute will make the stats only count the groovy and java source code.

@dkowis @dimtruck Please review


incremental loading

I have hbase table that increase continuously, and the spark job only need the new data everyday using this code:
val df = withCatalog(catalog)
val s = df.filter((($"col0" >= day+"00:00:00" && $"col0" < day+"23:59:59")
Does the shc load the whole table before filtering?
If it does, is there a way load the table in batch and stop it as soon as the newly loaded data doesn't match the filter?

SHC will not load the whole table for ">=" and "<", the filters will be pushed down to HBase. Only the data which are in the range of ($"col0" >= day+"00:00:00" && $"col0" < day+"23:59:59") will go back to Spark.

Thanks for replying. That seems great, but i do notice it takes longer and longer to load the new data as the table grows. Is it because hbase scans through the whole table every time I read? Can specify the row-id or something else to tell hbase which portion of the table to read? Thanks

When you specify a query the way you had, HBase has to scan all the rows to compare the column values and filter them.  If you have a properly designed rowkey, you can specify predicates on the rowkey to if you get better response time.

@nuoluo if you satisfied with answer could you close this issue.


Ceph daemons: Improve systemd services

A lot of Ceph issues I've been having with NixOS stem from the services generated by nixpkgs. Some things which I think will help massively are:

Use template service files, particularly for the OSD daemons. It's rather annoying at the moment to manually modify each service of a given type when you have a large number of them in your cluster; I don't want to hardcode names, and this is a perfect use-case for templated services here.
Create a service for activating ceph-volume OSDs. If you use ceph-volume to provision OSDs, then at each boot, you have to run ceph-volume lvm activate --all --no-systemd /after/ monitors become available, but /before/ any OSDs provisioned by ceph-volume are started. Currently, this is what I use:

systemd.services."ceph-volume-activate" = {
  requiredBy = ["ceph-osd.target"];
  requires = ["ceph-mon.target"];
  script = "ceph-volume lvm activate --all --no-systemd";
  path = [pkgs.ceph pkgs.util-linux pkgs.lvm2 pkgs.cryptsetup];
  serviceConfig = {
    Type = "oneshot";
    RemainAfterExit = "yes";
  };
};
systemd.targets."ceph-osd".requires = ["ceph-volume-activate.service" "ceph-mon.target"];

but I'm still tinkering.
3. Ensure the daemons have the proper paths. E.g. the mgr daemons should have pkgs.ceph and pkgs.smartmontools in their path (but smartctl still doesn't work on the dashboard; I'm still investigating).
4. Each daemon should have its state folder created automatically in /var/lib/ceph/, by user ceph. Currently, you have to manually create that folder.
If I think of more improvements that could be made, I'll add them here.

@spacekitteh, so I'm not alone -- I've also created the ceph volume activation service.
Filed a PR: https://github.com/NixOS/nixpkgs/pull/281924

@spacekitteh, can't add you to reviewers, for some reason.


should support connection properties ass well as connection string params

Currently all connection parameters must be specified in the connection string, rather than in the connection properties.  I like connection properties better as they remove the issue of safely escaping parameter values in the connection string.

Connection parameters can be passed using connection properties as of version 0.6


TypeError Crash

here's the console output, happens randomly, sometimes not for days, sometimes a few times a day
/usr/local/lib/node_modules/discord-irc/node_modules/winston/lib/winston/logger.js:237
      throw ex;
      ^

TypeError: Converting circular structure to JSON
    at JSON.stringify (<anonymous>)
    at Printf.formatter [as template] (/usr/local/lib/node_modules/discord-irc/dist/logger.js:14:32)
    at Printf.transform (/usr/local/lib/node_modules/discord-irc/node_modules/logform/printf.js:11:26)
    at Format.info [as transform] (/usr/local/lib/node_modules/discord-irc/node_modules/logform/combine.js:20:24)
    at DerivedLogger._transform (/usr/local/lib/node_modules/discord-irc/node_modules/winston/lib/winston/logger.js:235:29)
    at DerivedLogger.Transform._read (/usr/local/lib/node_modules/discord-irc/node_modules/readable-stream/lib/_stream_transform.js:184:10)
    at DerivedLogger.Transform._write (/usr/local/lib/node_modules/discord-irc/node_modules/readable-stream/lib/_stream_transform.js:172:83)
    at doWrite (/usr/local/lib/node_modules/discord-irc/node_modules/readable-stream/lib/_stream_writable.js:428:64)
    at writeOrBuffer (/usr/local/lib/node_modules/discord-irc/node_modules/readable-stream/lib/_stream_writable.js:417:5)
    at DerivedLogger.Writable.write (/usr/local/lib/node_modules/discord-irc/node_modules/readable-stream/lib/_stream_writable.js:334:11)

What version of discord-irc are you on? A very similar issue was fixed in #453, included in 2.7.0

I'm going to close this due to a lack of info. If it's still a problem, feel free to get back to us with more details!


Don't buffer doctor logger

We don't need to buffer the logger with a thousand capacity. It's not a high-throughput logger, this also caused issue whereby the logger can't keep up with repeated messages being send(somehow they are lost in the queue? Seems like a issue in MultiChannelledLog's Start code).
Resolves #19969

it's better to add a TODO or FIXME in code, in case some future users will be bitten by this problem.

Eh, I haven't been able to find any lost logs anymore. Unless someone is still able to reproduce it with a low probability I'm fine with that otherwise the bug is fixed to me.

Because the Gitea's logger system works like this (which is not ideal):
func main() {
	c := make(chan string, 1)
	go func() {
		s := <-c
		_, _ = os.Stdout.WriteString(s)
	}()
	c <- "test\n"
}

You may not see the "test" output. But if you add a time.Sleep after the c <- ..., then you can see the "test" again.

You may not see the "test" output. But if you add a time.Sleep after the c <- ..., then you can see the "test" again.

Yeah, but it seems like early exiting the program isn't the issue in this case, it's rather that close channel can take precedence over the queue channel.

I think there might be still a low possibility chance to make the log still in the channel when existing, not that serious.

You end up with non-clean code IMO, as within the case <-m.close: you would need to check for the channel again and then either say goto xxx or duplicate the code.

This due that buffered channels don't seem to take precedence in a select operation(which is pseudo-random according to the spec), however it seems like if you have unbuffered channel, you can actually take precedence in the select operation, if this is pure luck or actual defined behavior is a question.
CLOSING
RECEIVED AFTER CLOSING: true, &log.Event{level:3, msg:" - \x1b[1;33m[W]\x1b[0m old hook file /home/gusted/Desktop/coding/gitea/data/gitea-repositories/gusted/test_push_mirror.git/hooks/update does not exist", caller:"code.gitea.io/gitea/modules/doctor.checkHooks.func1()", filename:"modules/doctor/misc.go", line:67, time:time.Time{wall:0xc0a2d98bc1497275, ext:142911751, loc:(*time.Location)(0x57c9940)}, stacktrace:""}
 - [W] new hook file /home/gusted/Desktop/coding/gitea/data/gitea-repositories/gusted/test_push_mirror.git/hooks/pre-receive.d/gitea does not exist

diff --git a/modules/log/event.go b/modules/log/event.go
index f66ecd179..41b80c99c 100644
--- a/modules/log/event.go
+++ b/modules/log/event.go
@@ -328,6 +328,7 @@ func (m *MultiChannelledLog) Start() {
                                m.level = INFO
                        }
                case event, ok := <-m.queue:
+                       fmt.Printf("RECEIVING: %t, %#v\n", ok, event)
                        if !ok {
                                m.closeLoggers()
                                return
@@ -351,6 +352,14 @@ func (m *MultiChannelledLog) Start() {
                        }
                        m.rwmutex.RUnlock()
                case <-m.close:
+                       fmt.Println("CLOSING")
+                       select {
+                       case event, ok := <-m.queue:
+                               fmt.Printf("RECEIVED AFTER CLOSING: %t, %#v\n", ok, event)
+                       case <-time.After(100 * time.Millisecond):
+                               fmt.Println("No item in queue after closing.")
+                       }
+
                        m.closeLoggers()
                        return
                }
@@ -359,10 +368,12 @@ func (m *MultiChannelledLog) Start() {

 // LogEvent logs an event to this MultiChannelledLog
 func (m *MultiChannelledLog) LogEvent(event *Event) error {
+       fmt.Printf("SENDING: %#v\n", event)
        select {
        case m.queue <- event:
                return nil
        case <-time.After(100 * time.Millisecond):
+               fmt.Println("TIMING ERROR")
                // We're blocked!
                return ErrTimeout{
                        Name:     m.name,

Yup, the select operation is pseudo-random, I updated my demo steps. Even the flush and close channels are activated, the queue channel might not be processed in rare cases, so the event is left in the queue channel.
Not serious, just my thoughts. 😊

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@b01dce2). Click here to learn what that means.
The diff coverage is 0.00%.

@@           Coverage Diff           @@
##             main   #19982   +/-   ##
=======================================
  Coverage        ?   47.33%
=======================================
  Files           ?      968
  Lines           ?   134224
  Branches        ?        0
=======================================
  Hits            ?    63540
  Misses          ?    62954
  Partials        ?     7730

Impacted Files
Coverage Δ

cmd/doctor.go
0.00% <0.00%> (ø)

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 b01dce2...060c5f9. Read the comment docs.

And you are correct, 0 length channel doesn't have such problem. 👍

Agree to "empty the eventstream into close".
ps: I think PR has done what should to for 1.17. Maybe the logger system could be refactored in next milestone.  And maybe LevelLoggerLogger could have a better name then, appender like Java? 😊

OK,
I think:
diff --git a/modules/log/event.go b/modules/log/event.go
index f66ecd179..40beefedb 100644
--- a/modules/log/event.go
+++ b/modules/log/event.go
@@ -345,18 +345,41 @@ func (m *MultiChannelledLog) Start() {
 				m.closeLoggers()
 				return
 			}
+			m.emptyQueue()
 			m.rwmutex.RLock()
 			for _, logger := range m.loggers {
 				logger.Flush()
 			}
 			m.rwmutex.RUnlock()
 		case <-m.close:
+			m.emptyQueue()
 			m.closeLoggers()
 			return
 		}
 	}
 }

+func (m *MultiChannelledLog) emptyQueue() bool {
+	for {
+		select {
+		case event, ok := <-m.queue:
+			if !ok {
+				return false
+			}
+			m.rwmutex.RLock()
+			for _, logger := range m.loggers {
+				err := logger.LogEvent(event)
+				if err != nil {
+					fmt.Println(err)
+				}
+			}
+			m.rwmutex.RUnlock()
+		default:
+			return true
+		}
+	}
+}
+
 // LogEvent logs an event to this MultiChannelledLog
 func (m *MultiChannelledLog) LogEvent(event *Event) error {
 	select {

Will do the correct thing here.


title should not be escaped (when you assing title you should unescape before)

https://github.com/vojtech-dobes/nette.ajax.js/blob/299903f97158084b06fcbaeb2a2db87b38eac68b/nette.ajax.js#L467-L469
when you set escaped string to document.title
document.title = ">"
the result is still escaped, windows title shows >
it is not decoded like
$('<div/>').html(">").text();
where the final string is >

Would you prepare PR please?


Embedding interface

DO NOT MERGE YET
This is an (as of yet) incomplete transition to the embedding interface that will simultaneously allow accurate checks for code coverage and embedding uutils in other programs (as shell builtins, for example).  See #1124 for some more details.
I am not particularly satisfied with the interface at the moment because of boilerplate and such, so if anyone has any ideas I would be very interested to hear them.

No activity for years, closing!


If repository is already cloned from previous run do pull before commit.

Replicate:

update image with script
do any commit to same repo from another source
try to update image again

It should always do a pull to update the local repository before commit and push.
In case push fails, it should try to pull and merge(if there are no conflicts) - then push again.
git commit was successful
using SSH key defined in /go/gitops/id_rsa
[error] non-fast-forward update: refs/heads/develop

In case there is conflict in pull+merge then it should fail(exit non 0)

Go-git Library that is used to to Git operations does not support merge. So if commit has conflicts then instead of pull and merge, git clone and pull is going to be made. Implementation in 94f3101a.

Works. The commit gets done even if some change happened between clone and push.


Update _index.md

v0.6.2 fails with a 'crashback loop' error - version 0.8.0 installs without issue
the suse.com page (where I found the hint) should probably also be changed:
https://www.suse.com/c/rancher_blog/upgrade-a-k3s-kubernetes-cluster-with-system-upgrade-controller/
For Rancher (product) docs only
When contributing to docs, please update the versioned docs. For example, the docs in the v2.6 folder of the rancher folder.
Doc versions older than the latest minor version should only be updated to fix inaccuracies or make minor updates as necessary. The majority of new content should be added to the folder for the latest minor version.

Thank you for the PR. Looks https://github.com/rancher/docs/pull/3333 already handles this.


[BUG] EventHubProducerClient SendAsync fails with EventHubsException(ClientClosed): Unable to create the items needed to communicate with the Event Hubs service

Describe the bug
We randomly see an exception of EventHubsException(ClientClosed): Unable to create the items needed to communicate with the Event Hubs service being thrown from EventHubProducerClient.SendAsync.
Expected behavior
Not to fail with the error...
Actual behavior (include Exception or Stack Trace)
EventHubsException(ClientClosed): Unable to create the items needed to communicate with the Event Hubs service
and also -
Exception while executing function: InventoryToRawEvents
---> System.Net.Sockets.SocketException (10048): Only one usage of each socket address (protocol/network address/port) is normally permitted.
at Azure.Messaging.EventHubs.Amqp.AmqpConnectionScope.CreateAndOpenConnectionAsync(Version amqpVersion, Uri serviceEndpoint, Uri connectionEndpoint, EventHubsTransportType transportType, IWebProxy proxy, Int32 sendBufferSizeBytes, Int32 receiveBufferSizeBytes, RemoteCertificateValidationCallback certificateValidationCallback, String scopeIdentifier, TimeSpan timeout)
at Microsoft.Azure.Amqp.FaultTolerantAmqpObject`1.OnCreateAsync(TimeSpan timeout)
at Microsoft.Azure.Amqp.Singleton`1.GetOrCreateAsync(TimeSpan timeout)
at Microsoft.Azure.Amqp.Singleton`1.GetOrCreateAsync(TimeSpan timeout)
at Azure.Messaging.EventHubs.Amqp.AmqpConnectionScope.OpenProducerLinkAsync(String partitionId, TransportProducerFeatures features, PartitionPublishingOptions options, TimeSpan timeout, CancellationToken cancellationToken)
at Azure.Messaging.EventHubs.Amqp.AmqpProducer.CreateLinkAndEnsureProducerStateAsync(String partitionId, PartitionPublishingOptions partitionOptions, TimeSpan timeout, CancellationToken cancellationToken)
at Azure.Messaging.EventHubs.Amqp.AmqpProducer.CreateLinkAndEnsureProducerStateAsync(String partitionId, PartitionPublishingOptions partitionOptions, TimeSpan timeout, CancellationToken cancellationToken)
at Microsoft.Azure.Amqp.FaultTolerantAmqpObject`1.OnCreateAsync(TimeSpan timeout)
at Microsoft.Azure.Amqp.Singleton`1.GetOrCreateAsync(TimeSpan timeout)
at Microsoft.Azure.Amqp.Singleton`1.GetOrCreateAsync(TimeSpan timeout)
at Azure.Messaging.EventHubs.Amqp.AmqpProducer.CreateBatchAsync(CreateBatchOptions options, CancellationToken cancellationToken)
at Azure.Messaging.EventHubs.Amqp.AmqpProducer.CreateBatchAsync(CreateBatchOptions options, CancellationToken cancellationToken)
at Azure.Messaging.EventHubs.Producer.EventHubProducerClient.CreateBatchAsync(CreateBatchOptions options, CancellationToken cancellationToken)
at Azure.Messaging.EventHubs.Producer.EventHubProducerClient.CreateBatchAsync(CancellationToken cancellationToken)
at Common.EventHub.EventHubSender.SendEventsAsync(IEnumerable`1 events) in C:\__w\1\s\src\Common.EventHub\EventHubSender.cs:line 30
at Processors.Functions.InventoryToRawEventsFunction.InventoryToRawEvents(IReadOnlyList`1 documents) in C:\__w\1\s\src\Processors\Functions\InventoryToRawEventsFunction.cs:line 77
at Microsoft.Azure.WebJobs.Host.Executors.VoidTaskMethodInvoker`2.InvokeAsync(TReflected instance, Object[] arguments) in C:\projects\azure-webjobs-sdk-rqm4t\src\Microsoft.Azure.WebJobs.Host\Executors\VoidTaskMethodInvoker.cs:line 20
at Microsoft.Azure.WebJobs.Host.Executors.FunctionInvoker`2.InvokeAsync(Object instance, Object[] arguments) in C:\projects\azure-webjobs-sdk-rqm4t\src\Microsoft.Azure.WebJobs.Host\Executors\FunctionInvoker.cs:line 52
at Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.InvokeWithTimeoutAsync(IFunctionInvoker invoker, ParameterHelper parameterHelper, CancellationTokenSource timeoutTokenSource, CancellationTokenSource functionCancellationTokenSource, Boolean throwOnTimeout, TimeSpan timerInterval, IFunctionInstance instance) in C:\projects\azure-webjobs-sdk-rqm4t\src\Microsoft.Azure.WebJobs.Host\Executors\FunctionExecutor.cs:line 572
at Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.ExecuteWithWatchersAsync(IFunctionInstanceEx instance, ParameterHelper parameterHelper, ILogger logger, CancellationTokenSource functionCancellationTokenSource) in C:\projects\azure-webjobs-sdk-rqm4t\src\Microsoft.Azure.WebJobs.Host\Executors\FunctionExecutor.cs:line 518
at Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.ExecuteWithLoggingAsync(IFunctionInstanceEx instance, FunctionStartedMessage message, FunctionInstanceLogEntry instanceLogEntry, ParameterHelper parameterHelper, ILogger logger, CancellationToken cancellationToken) in C:\projects\azure-webjobs-sdk-rqm4t\src\Microsoft.Azure.WebJobs.Host\Executors\FunctionExecutor.cs:line 296

To Reproduce
The client is created and cached within the class -
EventHubProducerClient eventHubProducerClient = eventHubProducerClientFactory.Create(
                options.Value.EventHubFqdn,
                options.Value.EventHubName,
                authenticationHelper.GetDefaultAzureCredential(options.Value.ClientId));

class EventHubProducerClientFactory : IEventHubProducerClientFactory
{
        public EventHubProducerClient Create(string fullyQualifiedNamespace, string eventHubName, TokenCredential credential) =>
            new EventHubProducerClient(fullyQualifiedNamespace, eventHubName, credential);
}

Environment:

Name and version of the Library package used: Azure.Messaging.EventHubs 5.5.0
Hosting platform or OS and .NET runtime version: Windows Azure Function, .NET Core 3.1

Hi @vakuras.   Thank you for reaching out and we regret that you're experiencing difficulties.  The stack trace indicates a problem at the network level:
System.Net.Sockets.SocketException (10048): Only one usage of each socket address (protocol/network address/port) is normally permitted.
That would seem to indicate something in the host network stack is overloaded or that network resources are not being cleaned up before reuse.   Unfortunately, there's no much context for me to speculate further;  the code that you've shared references a class that is not part of the SDK and there's no indication of how the client is managed.
Are you able to provide more context around the host application,  the eventHubPProducerClientFactory,  authenticationHelper and how the application is using and managing producers?

eventHubProducerClientFactory is a simple singleton factory, it returns an instance of EventHubProducerClient using this constructor - new EventHubProducerClient(fullyQualifiedNamespace, eventHubName, credential).
AuthenticationHelper returns a DefaultTokenCredential and it is passed to the EventHubProducerClient.
The client is cached for the whole lifetime of the class - in this case an Azure Function class.

private field within a class.
We use DI for the factory (IEventHubProducerClientFactory), since we use multiple/different EventHubs within the same Azure Function.

I added the factory code above.
It is not static. It is part of a class which is registered as a Singleton using DI.

What it looks like is that you're creating a new producer instance using your factory each time that your Function is invoked and just stashing it in a private field of the Function class.   Assuming that statement is correct, the producer isn't being cached.   It will live for a single function execution and then go out of scope.
If the application is not explicitly closing or disposing the client, which seems likely, then the connection is being abandoned and will remain active until the idle timeout occurs (~60 seconds).   If your incoming request rate is greater than roughly one per minute, then the application is opening connections faster than they're being closed.  This will lead to socket and port exhaustion - which would agree with the exception in your stack trace.
In addition to the network issues, this usage pattern will also perform very poorly because the application is paying the cost to establish a connection/link for every Function invocation.
Since you indicated that you are using multiple outgoing Event Hub instances, my recommendation would be to enhance your factory such that it it disposable and has a ConcurrentDictionary instance that caches/creates producers on demand.   The goal is to ensure that there is a single producer instance created for each Event Hub which is reused across Function invocations.  Since you indicated the factory is registered for DI, this would also allow you to implement Dispose and ensure that the clients are closed at that point.

I'm going to mark this as addressed, as I believe that we've uncovered the root cause of your inquiry and adjustments that will remediate.   Please feel free to use the "/unresolve" command if you'd like to continue the discussion.

/unresolve
Hi,
We added an explicit dispose (using a using).
Once, or twice we had a "System.Net.Sockets.SocketException (10060): A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond." error.
Have an idea what can be the issue?

This message indicates that the .NET networking layer was unable to establish a connection within the configured timeout period.  This is most commonly network latency, transient network issues, or contention in the thread pool that is preventing continuations from being scheduled efficiently.


"Failed to parse HTTP response" when querying the database if the database contains a field with the url type

If database contains a field with the url type an error occurs:

notion: failed to parse HTTP response: json: cannot unmarshal string into Go struct field DatabaseQueryResponse.results of type notion.URL

Originally posted by @maksim77 in https://github.com/dstotijn/go-notion/issues/11#issuecomment-847107164

I misinterpreted the docs; doing a fix now, should be there in 30 min or so.

Should be fixed in v0.3.1.


Add generic config mechanism

This patch adds a generic configuration mechanism to the admin app. There are two new commands, GET_CONFIG and SET_CONFIG, that can be used to query and change configuration values by key.  The runner is responsible for providing the configuration struct and a mapping from key to field.
Points to discuss:

This implementation stores a format version in the config file.  We could drop that and just change the file name if we change format.
The config is loaded when the app is created and kept in memory during the app’s lifetime.  We could also just load it on demand.
Currently, we just panic on load failure.  It could be better to just the default settings and signal an error.
Do we need touch confirmation for the get/set operations?

Example implementation in the runner: https://github.com/Nitrokey/nitrokey-3-firmware/pull/337

Looks good!

Main changes since the initial implementation:

Use ClientFilestore directly instead of a Trussed client to load the configuration so that it works during initialization.
Serialize data as strings instead of CBOR types.
Drop the format version as part of the config file.
Don’t write a config file if the config is equals to the default config.

Still, a case could be made to use a backend instead so that applications can access changed configuration values without reboot.  Though that would mean that applications need to be aware of the configuration mechanism.

pynitrokey PR for testing: https://github.com/Nitrokey/pynitrokey/pull/448

Still, a case could be made to use a backend instead so that applications can access changed configuration values without reboot. Though that would mean that applications need to be aware of the configuration mechanism.

For that, could the Config be passed to the applications in components/app everytime (apdu|ctaphid)_dispatch is called, that way the admin app can still mutate it, but the apps get the latest config on every call.

lgtm


Accept external CFLAGS

Some distributions build the programs with a specific set of CFLAGS.
Lets allow that by adding raylibs flags.

Thank you very much! :)


feat(#169): support syncing to draft PRs

feat(#169): support syncing to draft PRs
Fixes #169
misc.

Current dependencies on/for this PR:

main

PR #182   👈

This stack of pull requests is managed by Graphite.

Merge activity

Jan 18, 7:52 PM: @MartinBernstorff merged this pull request with Graphite.


#790 Add acceleration to ProjectileComponent

Add acceleration to projectile component
Add test to ensure that acceleration is working as intended
closes #790

there was an error in position calculation, fixed


added editor for the RestAPI

:<|> "static" :> Raw  // this line adds the static "folder" for the restAPI
:<|> serveDirectoryFileServer "/webapp" // this tells it where to look it up in the docker image
// thus there is the index.html and all other related code for the graceful visual editor

Please add the comments in the PR to the code.


code --install-extension results in UnhandledPromiseRejectionWarning: Canceled: Canceled

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

Version: 1.58.2 (user setup)
Commit: c3f126316369cd610563c75b1b1725e0679adfb3
Date: 2021-07-14T22:10:15.214Z
Electron: 12.0.13
Chrome: 89.0.4389.128
Node.js: 14.16.0
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.18363
Steps to Reproduce:

Run code.cmd --install-extension some_extension.vsix --force
This was initially produced with code.cmd --install-extension rust-analyzer.vsix --force from the rust-analyzer extension: https://github.com/rust-analyzer/rust-analyzer

CC rust-analyzer/rust-analyzer#9615

Can't repro it. Are there any steps/set up that is missing here?

version: 1.58.1
Nodejs: v14.16.0
The extension works sometimes, but it will not work in this warning:
... .0.0.vsix' was successfully installed.
(node:10856) UnhandledPromiseRejectionWarning: Canceled: Canceled
at Object.O [as canceled] (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:5:1157)
at T.cancel (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:9:62864)
at T.dispose (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:9:63004)
at k.dispose (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:9:63266)
at W (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:6:3428)
at d.clear (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:6:3888)
at dispose (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:6:3867)
at dispose (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:6:4402)
at dispose (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cliProcessMain.js:11:7229)
at W (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:6:3428)
at C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:6:3634
at Object.dispose (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:6:3706)
at Object.W [as dispose] (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:6:3567)
at C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cliProcessMain.js:14:41195
at Map.forEach ()
at Ne.dispose (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cliProcessMain.js:14:41182)
at W (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:6:3428)
at d.clear (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:6:3888)
at dispose (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:6:3867)
at a.dispose (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:6:4402)
at Object.g [as main] (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cliProcessMain.js:17:51594)
at processTicksAndRejections (internal/process/task_queues.js:93:5)
at async k (C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\cli.js:12:13756)

It fixed after updated to v1.58.2

Can you also please check with our latest insiders - https://code.visualstudio.com/insiders/

I'm still getting this error after forced install of an extension.
VS Code: 1.58.2
NPM: 7.15.1
Node: v14.2.0
Windows 10 Home: 19043.1110

@rbrisita I can't repro, please provide steps/

@sandy081:
 code --extensions-dir .\.vscode\extensions --install-extension dbaeumer.vscode-eslint --force
Hope this helps!

Cant repro it.
Can you please try our latest insiders and see if you can repro it?

Reproduced in my environment.
It seems to occur when installing or uninstalling extensions one after another

VS Code Version: 1.58.2
OS Version: OSX 11.4

Steps to Reproduce:

code --list-extensions | xargs -I{} code --uninstall-extension {}

I can repro this with following steps while running from sources

Download the extension vsix from https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-ssh
Install the vsix using command ./scripts/code-cli.sh --install-extension <vsix_path>

Following error is printed
yarn run v1.22.4
$ node build/lib/electron
✨  Done in 0.51s.
[12:18:12] Syncronizing built-in extensions...
[12:18:12] You can manage built-in extensions with the --builtin flag
[12:18:12] [marketplace]<EMAIL_ADDRESS>✔
[12:18:12] [marketplace]<EMAIL_ADDRESS>✔
[12:18:12] [marketplace]<EMAIL_ADDRESS>✔
[12:18:12] [marketplace]<EMAIL_ADDRESS>✔
[12:18:12] [marketplace]<EMAIL_ADDRESS>✔
[12:18:12] [marketplace]<EMAIL_ADDRESS>✔
Debugger listening on ws://<IP_ADDRESS>:5874/2ac72eb4-e7dc-4ac4-9b59-f5abd3f0eda9
For help, see: https://nodejs.org/en/docs/inspector
Installing extensions...
Extension 'ms-vscode-remote.remote-ssh-0.65.7.vsix' was successfully installed.
(node:39415) UnhandledPromiseRejectionWarning: Canceled: Canceled
    at canceled (/Users/sandy081/work/vscode/out/vs/base/common/errors.js:109:23)
    at Delayer.cancel (/Users/sandy081/work/vscode/out/vs/base/common/async.js:247:57)
    at Delayer.dispose (/Users/sandy081/work/vscode/out/vs/base/common/async.js:259:18)
    at ThrottledDelayer.dispose (/Users/sandy081/work/vscode/out/vs/base/common/async.js:287:26)
    at dispose (/Users/sandy081/work/vscode/out/vs/base/common/lifecycle.js:99:27)
    at DisposableStore.clear (/Users/sandy081/work/vscode/out/vs/base/common/lifecycle.js:160:17)
    at DisposableStore.dispose (/Users/sandy081/work/vscode/out/vs/base/common/lifecycle.js:153:18)
    at FileWatcher.dispose (/Users/sandy081/work/vscode/out/vs/base/common/lifecycle.js:195:25)
    at FileWatcher.dispose (/Users/sandy081/work/vscode/out/vs/platform/files/node/watcher/nodejs/watcherService.js:103:19)
    at dispose (/Users/sandy081/work/vscode/out/vs/base/common/lifecycle.js:99:27)
    at /Users/sandy081/work/vscode/out/vs/base/common/lifecycle.js:121:43
    at /Users/sandy081/work/vscode/out/vs/base/common/lifecycle.js:130:17
    at Object.dispose (/Users/sandy081/work/vscode/out/vs/base/common/functional.js:18:25)
    at dispose (/Users/sandy081/work/vscode/out/vs/base/common/lifecycle.js:115:17)
    at /Users/sandy081/work/vscode/out/vs/platform/files/common/fileService.js:899:76
    at Map.forEach (<anonymous>)
    at FileService.dispose (/Users/sandy081/work/vscode/out/vs/platform/files/common/fileService.js:899:33)
    at dispose (/Users/sandy081/work/vscode/out/vs/base/common/lifecycle.js:99:27)
    at DisposableStore.clear (/Users/sandy081/work/vscode/out/vs/base/common/lifecycle.js:160:17)
    at DisposableStore.dispose (/Users/sandy081/work/vscode/out/vs/base/common/lifecycle.js:153:18)
    at CliMain.dispose (/Users/sandy081/work/vscode/out/vs/base/common/lifecycle.js:195:25)
    at Object.main (/Users/sandy081/work/vscode/out/vs/code/node/cliProcessMain.js:157:21)
    at async main (/Users/sandy081/work/vscode/out/vs/code/node/cli.js:38:13)
(Use `Electron --trace-warnings ...` to show where the warning was created)
(node:39415) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 2)
(node:39415) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Assigning to @bpasero as this is coming from file service at following location
https://github.com/microsoft/vscode/blob/994a6c197b5a15d7b9523cb6dfd17f1dbbcb7772/src/vs/platform/files/common/fileService.ts#L1154-L1154

Even though I cannot reproduce, I noticed that the CLI process was missing to install handlers for unhandled rejections:
https://github.com/microsoft/vscode/blob/e007ca899cfc1db8edde0e959b6d8ad8a9694cf7/src/vs/code/node/cliProcessMain.ts#L194-L195


Message count on the queue/topic tree does not refresh after purging queue.

When you purge dead-letter queue, message count in brackets on the service bus structure tree does not get refreshed even if I hit "refresh button".
and is this project still maintained? it seems like this is the only UI tool that allows you to purge queues and subscriptions.

Hi @miqm
Thanks for reporting this issue. I'm looking into it.

I've fixed it in #47


Implement elvish options for external commands

Currently, external commands allow no elvish options:
⬥ e:echo &foo
Exception: external commands don't accept elvish options
[tty 91], line 1: e:echo &foo

This makes sense, since there is no API for communicating such options to the external commands.
But it could make sense to allow such options, and let elvish interpret them instead. Such options could be used to alter how elvish runs the command, or how it interprets exit values or exits due to signals. For example, there could be an option to run a command with different process limits, or a different umask, say; or there could be an option to raise an exception if the command was killed by a signal such as SIGPIPE.
In fact, issue #952 is the impetus for the present proposal. A long discussion ensued on that issue regarding it. Please read the discussion there before continuing it here.
(In closing, I am not altogether sure that this is a viable or desirable feature, but I am at least partly in favour, or I would not have suggested it in the first place. But also, I want to keep this separate from the discussion about whether or not SIGPIPE should cause an exception.)

FWIW, I think this proposal merits discussion but the default handling of exits due to SIGPIPE should be to treat such terminations as success; i.e., as if the exit status was zero. If someone wants Elvish to treat SIGPIPE terminations as an error they should have to say so explicitly; e.g., via something like e:echo &pipefail. However, I am skeptical that particular magic option would be used and thus cannot be justified.
If this proposal is implemented it needs to apply to Elvish builtins and functions; not just external commands. That's because the user shouldn't have to know whether a particular invocation that includes the special option is an external command, function, or builtin. Which raises some thorny questions.
Note that implementing this proposal has backward, and future, compatibility concerns. If this is implemented some option names will not be usable by an Elvish builtin or function. Worse, the set of special option names will increase over time. Which means an option the user can use today in an Elvish function definition might become magical in a future Elvish version. Thus clashing with the user defined option. The future compatibility problem can be ameliorated by using a naming convention. For example, by requiring special options to begin with a leading underscore to indicate they are semi-private to Elvish. But that has its own problems.


TypeError: init() takes from 3 to 5 positional arguments but 6 were given.

TypeError: init() takes from 3 to 5 positional arguments but 6 were given.

when i run example.ipynb, i met error.

I wasn't able to reproduce this error. What versions of albumentations and torchvision do you have installed?


V2 website

Hi all !
Since work is continuing hard on V2 , we also need to get started on the new website !
Some basic ideas:

Landing page:

catchy intro , with an embeded JSCAD design (this part of V2 is already useable but basic)
some key points for what jscad is
links to 'getting started' (how to embed, links to tutorials and how tos)

Navigation bar:

home
docs
features
community
playground (possibly versioned)
blog
showcase

Basic requirements:

simple html & css
avoid complex tooling if at all
reuse our new colors ? (needs reference)

We would love to have your feedback and help !
thanks in advance

Maybe a list of nice websites would also add to the creative juices.

https://mochajs.org/ Mocha

https://maker.js.org/
https://www.gatsbyjs.org/
https://reactjs.org/

@WillAdams I started a project that is a similar idea:
https://danmarshall.github.io/jscad-gallery/
This is more of a 3D consumer idea, instead of a 3D coder idea. I think it would be nice if the new website would cater to both consumers and coders.

I came across those --- and thought they were very cool --- meant to mention them.

Not much progress... sigh
I was really impressed by the Libre Office website. Very nice, simple, and understandable.
https://www.libreoffice.org/

@EricBuijs please contact me via hangouts; Jeff Gay<EMAIL_ADDRESS>

@z3dev is there a plan to go ahead with a new website?

@noce2 - Final touches are being put on it now, at least for a major rev on V2. It will still be considered alpha, but is pretty damn stable.

@noce2 thanks for the ping.
It would be cool if someone took this on, working from the ground up, and making a super website for JSCAD projects, teams, and users.
I think there’s enough thoughts on contents and likes to start something. ;)

@noce2 thanks for the ping.
It would be cool if someone took this on, working from the ground up, and making a super website for JSCAD projects, teams, and users.
I think there’s enough thoughts on contents and likes to start something. ;)

Heh, I probably should have read the whole thread.  The new modeller on a globally accessible site is coming soon.  A full blown site with community, model sharing, etc?  Not yet.  I'm certainly thinking along the same lines though.
I'll take this on my plate for the moment, and see what I can drive once we get the alpha finalized and release.

Could you please build a web hosted V2 instance on github pages using Travis CI or github actions ?
openjscad.org is stuck on V1 for years, and so we can't try V2 without building it ourselves.
some of us (i.e. me) know just enough JS to write our models, but are not working with nodejs, lerna and the whole toolset of frontend developers.

Could you please build a web hosted V2 instance on github pages using Travis CI or github actions ?
openjscad.org is stuck on V1 for years, and so we can't try V2 without building it ourselves.
some of us (i.e. me) know just enough JS to write our models, but are not working with nodejs, lerna and the whole toolset of frontend developers.

The V2 website is coming very soon. We had to wait for some fixes as there were major bugs and missing functionality.
Please watch the user group for announcements.

V2 JSCAD is available at www.jscad.xyz
It’s still an early alpha version but useable for creating designs.

Here’s some feed back from #245 which touched on the community site to share components.
Other similar sites:

https://aframe.io/aframe-registry/

Some ideas:

I have seen a lot of users create module based code that gets 'flattened' down (ie something like browserify) for simple online use, so I think it is up to us to making the modules approachable even for non technical folks ? Ie a simple UI that could wrap up your current work as a reuseable package? (with optional github/npm publishing ?)
I think we could re-use the engines field in package.json (just like Atom does, except we would set it to 'jscad' ) to be able to easily query jscad packages created by users... hmm lots of good stuff !


Project Roadmap?

Hey. Thank you for your effort on this project.
I'm very interested in what elixir-desktop turns out to be eventually.
Do you think spelling out a roadmap for the future of the project will be helpful?
I believe it could increase interest and also encourage participation and discussions.

Good idea! Just added a short section. Let me know what other info I should add https://hexdocs.pm/desktop/readme.html#status-roadmap


Database init

In troubleshooting this issue: https://github.com/digitalbazaar/bedrock-mongodb/pull/4
I found that when attempting to start bedrock-idp in test mode that the following code block was running 7 times.
https://github.com/digitalbazaar/bedrock-mongodb/blob/master/lib/database.js#L129-L186
In the case of test mode where the dropCollection.onInit option is set, the collections are being created and dropped 7 times on startup.

The number of iterations appears to be related to the number of bedrock.config.core.workers configured.

Using the drop collections feature is not supported w/multiple workers. It only runs in test mode which is intentionally a single worker simple process everywhere in our tests. I'm going to close this. If we want to enable using this on multiple workers in the future, it needs to be moved inside a bedrock.runOnce block.


Args fix

I think that nargs='?' is required here for "tic_tac_toe" to be the default game when no positional arguments are given i.e. python value_iteration.py https://docs.python.org/3/library/argparse.html#default

Nice catch! But, I believe we've switched most of them over to absl flags, so I'll do it for this one too! (Will still integrate it via this PR so no need to close it.)


[stable/prometheus-operator] Allow to specify resources requests and limits for grafana and kube-state-metrics

Is this a request for help?: No

Is this a BUG REPORT or FEATURE REQUEST? (choose one): BUG REPORT
Version of Helm and Kubernetes:
k8s 1.12.4, helm 2.12.3
Which chart:
stable/prometheus-operator
What happened:
We can't sepcify the resources requests/limits for grafana and kube-state-metrics
What you expected to happen:
Be able to specify them.
How to reproduce it (as minimally and precisely as possible):
helm install --name prometheus stable/prometheus-operator
Anything else we need to know:

@mleneveut Both of these components are simply sub-charts of the prometheus-operator chart and limits must be set on them by accessing sub-chart values

Thanks it works.
Added this to my custom-values.yaml :
grafana:
  resources:
    limits:
      cpu: 100m
      memory: 500Mi
    requests:
      cpu: 10m
      memory: 200Mi
  adminPassword: "mysecurepassword"

kube-state-metrics:
  resources:
    limits:
      cpu: 100m
      memory: 200Mi
    requests:
      cpu: 10m
      memory: 50Mi

prometheus-node-exporter:
  resources:
    limits:
      cpu: 100m
      memory: 200Mi
    requests:
      cpu: 10m
      memory: 20Mi

alertmanager:
  alertmanagerSpec:
    resources:
      limits:
        cpu: 10m
        memory: 200Mi
      requests:
        cpu: 10m
        memory: 20Mi
prometheus:
  prometheusSpec:
    resources:
      limits:
        cpu: 250m
        memory: 2000Mi
      requests:
        cpu: 50m
        memory: 1300Mi


Add my first file

I have: created a new branch, created a file, and made a commit!

I have: created a new branch, created a file, and made a commit

I have: created a new branch, created a file, and made a commit


Julia environments

Syntax highlighting for Julia environments do not work. I thought this was fixed in https://github.com/jlelong/vscode-latex-basics/pull/15 but it does not seem to work now. Syntax highlighting in https://github.com/jlelong/vscode-latex-basics/commit/de12bcd961c686e147190f15a951b4336f0128e4 is working correctly, but is broken in the latest release.
The code:
\begin{juliaconsole}
a = rand(1024)
@btime sum($a)
\end{juliaconsole}
Some additional text here.

Used to have correct highlighting. Note the $ character does not cause highlighting to spill over past the end of the environment. As shown in the screenshot:

Now, the highlighting fix has reverted with the screenshot on the current version of master:

VS Code Version: 1.74.2
OS Version: Windows 11
LaTeX-Workshop version if you use it: Disabled for this test, but still broken with it enabled

I used git bisect to find the commit that introduced this bug -https://github.com/jlelong/vscode-latex-basics/commit/a741034f0d88fa0d24790ca5531a041024a12f0f. I will investigate a bit further.

The problem seems to be that you currently must have [] after the environment, even with no arguments for this to parse correctly. The following has correct parsing:

I have tried to make the [] optional, but I haven't been able to get it work. I am sure this will probably be a quick fix.


fix for issue #1090: replaced SetSensor with SetSensor light when generating light sensor

Description
This PR fixes issue 1090 the code generated now also changes when the light-Sensor is in ambient mode or not.
Fixes #1090
Type of change

Bug fix (non-breaking change which fixes an issue)

this change requires changes in the integration tests.

the only commit was already merged


IE11 No Longer Allowing Paste Of Images

Try copying an image to clipboard (do a google image search and copy an image to the clipboard), then using example page try and paste into the paste regions. Note that in Chrome it works perfectly, but in IE nothing happens. Also note that in last content editable example, the image flashes up for a second and then disappears.
Gary

@GaryStimson Thanks to this report. I pushed your code :)
https://github.com/layerssss/paste.js/pull/67