[Bug] [worker] Connections is not released after completing the SQL task

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
SQL type task and the data source is hive jdbc, the connection seems is not released after completing the SQL task, cause the number of connections always increasing.
The ds-worker at this point has no SQL tasks in progress, but there are still more than fifty connections

What you expected to happen
close the connection after completing the SQL task
How to reproduce
1
Anything else
No response
Version
3.0.0
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

I meet the same problem of maintaining a connection to the database even when there was no task scheduled.

Is this happen in 3.0.0-release or just beta?

Is this happen in 3.0.0-release or just beta?
There is a same issue #11120, but has already been fixed at 3.0.0-release.

3.0.0-release

Is this happen in 3.0.0-release or just beta?
There is a same issue #11120, but has already been fixed at 3.0.0-release.

3.0.0-release

3.0.0release use DataSource, and it will hold connection at default, you can reduce the minimumIdle to make the connection to be expire.

Is this happen in 3.0.0-release or just beta?
There is a same issue #11120, but has already been fixed at 3.0.0-release.

3.0.0-release

3.0.0release use DataSource in sql task, it will hold connection at default, you can reduce the minimumIdle to make the connection to be expire.

I locally standalone changed minimumIdle to 1 for all modules, but the total link is still 5.

Is this happen in 3.0.0-release or just beta?
There is a same issue #11120, but has already been fixed at 3.0.0-release.

3.0.0-release

3.0.0release use DataSource in sql task, it will hold connection at default, you can reduce the minimumIdle to make the connection to be expire.

I locally standalone changed minimumIdle to 1 for all modules, but the total link is still 5.

Could you please try to set the config spring.datasource.minIdle=1 in common.properties.

Could you please try to set the config spring.datasource.minIdle=1 in common.properties.

@ruanwenjun What is the default value of spring.datasource.minIdle, I feel that there is no limit to the number of connections, and the jdbc connection on the worker side can easily grow to more than 100

Hi @stalary , how is this problem going, have you found the cause?

Hi @stalary , how is this problem going, have you found the cause?

I haven't found the problem yet. I'll take a look at it when I'm free

+1 , I met the same problem, it is very destructive.

I meet the same problem in 3.0.0-release also, i had to restart it when the jdbc connection increased to more than 100 now.

I meet the same problem in 3.0.0-release also, i had to restart it when the jdbc connection increased to more than 100 now.

ok, let me check the problem.

Is this happen in 3.0.0-release or just beta?
There is a same issue #11120, but has already been fixed at 3.0.0-release.

3.0.0-release

3.0.0release use DataSource in sql task, it will hold connection at default, you can reduce the minimumIdle to make the connection to be expire.

I locally standalone changed minimumIdle to 1 for all modules, but the total link is still 5.

Could you please try to set the config spring.datasource.minIdle=1 in common.properties.

You are right, the connection decrease when I config common.properties. @ruanwenjun  @chunhui5566 @mongooooo @simon824  But I think we should decrease default minIdle in code.

Is this happen in 3.0.0-release or just beta?
There is a same issue #11120, but has already been fixed at 3.0.0-release.

3.0.0-release

3.0.0release use DataSource in sql task, it will hold connection at default, you can reduce the minimumIdle to make the connection to be expire.

I locally standalone changed minimumIdle to 1 for all modules, but the total link is still 5.

Could you please try to set the config spring.datasource.minIdle=1 in common.properties.

You are right, the connection decrease when I config common.properties. @ruanwenjun @chunhui5566 @mongooooo @simon824 But I think we should decrease default minIdle in code.

Thank you for you recheck and reply , i think the current problem is the connection not release, one day sooner or later it will still increased to more than 100 .  Befor V3.0.0-beta1  the datasource be put in map and there is no such problem.  now it in Guava Cache .  Could it be the problem?

Thank you for you recheck and reply , i think the current problem is the connection not release, one day sooner or later it will still increased to more than 100 . Befor V3.0.0-beta1 the datasource be put in map and there is no such problem. now it in Guava Cache . Could it be the problem?

Yes, in 3.0-release it no problem~

Is this happen in 3.0.0-release or just beta?
There is a same issue #11120, but has already been fixed at 3.0.0-release.

3.0.0-release

3.0.0release use DataSource in sql task, it will hold connection at default, you can reduce the minimumIdle to make the connection to be expire.

I locally standalone changed minimumIdle to 1 for all modules, but the total link is still 5.

Could you please try to set the config spring.datasource.minIdle=1 in common.properties.

You are right, the connection decrease when I config common.properties. @ruanwenjun @chunhui5566 @mongooooo @simon824 But I think we should decrease default minIdle in code.

Thank you for you recheck and reply , i think the current problem is the connection not release, one day sooner or later it will still increased to more than 100 . Befor V3.0.0-beta1 the datasource be put in map and there is no such problem. now it in Guava Cache . Could it be the problem?

Yes, in 3.0.0 release, we have fixed this bug.

Since this has already been fixed at 3.0.0 release, I will close this issue.

hi @stalary , set export SPRING_DATASOURCE_MIN_IDLE=1  in  $DS_HOME/bin/env/dolphinscheduler_env.sh ?

I had set the config spring.datasource.minIdle=1 in common.properties, but after running for a few weeks I found that the problem still exists, the number of connections is still increasing.

I had set the config spring.datasource.minIdle=1 in common.properties, but after running for a few weeks I found that the problem still exists, the number of connections is still increasing.

Did you use 3.0.0-release or 3.0.0 beta?

I had set the config spring.datasource.minIdle=1 in common.properties, but after running for a few weeks I found that the problem still exists, the number of connections is still increasing.

You use 3.0.0-release or 3.0.0 beta?

3.0.0-release

@simon824 @stalary Thanks for report this bug, I have submitted #12226 to fix this.


Use 3D editor gizmo helper for FogVolume to allow dragging individual faces

Follow-up to https://github.com/godotengine/godot/pull/80278.

This closes https://github.com/godotengine/godot-proposals/issues/9270.

Testing project: test_fog_volume_gizmo_helper.zip
Preview
https://github.com/godotengine/godot/assets/180032/457bf799-a60e-4dc9-8c8d-f7abe3b834c6

Thanks!


wkb/encoding package: check if Byte Order Marker is correctly set before processing stream

One of the errors detected by fuzzing (#53, #384) was the creation of valid geometries from corrupt data. This patch goes some ways to remedying this by checking if the BOM is correctly set (0 or 1) as per the specification and returning an error if it is any other value.

Pull Request Test Coverage Report for Build 979

0 of 0 (NaN%) changed or added relevant lines in 0 files are covered.
2 unchanged lines in 1 file lost coverage.
Overall coverage remained the same at 46.31%

Files with Coverage Reduction
New Missed Lines
%

provider/gpkg/binary_header.go
2
100.0%

Totals

Change from base Build 977:
0.0%

Covered Lines:
5824

Relevant Lines:
12576

💛  - Coveralls


Uncaught TypeError: Cannot read property 'toString' of undefined

The problem can be reproduced in the demo.

When I click on the red frame position of the picture，the console show the errors:

thanks, I have fixed it.


Do not generate related images direclty as it's done upstream

We are using OSBS feature "Heuristic annotations" - https://osbs.readthedocs.io/en/latest/users.html?highlight=bundle#pullspec-locations

/override ci/prow/lint


⚠ ClamAV has degraded performance

In 486f571, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 96 ms

Resolved: ClamAV performance has improved in c1c6db6.


L.hash is not a constructor

I see a previous issue raised about this but no solution was offered.  I get the same problem (TypeError: L.hash is not a constructor) with your current version using both hash and Hash.
I have var hash = new L.Hash(map); after map is declared.  Something works because the /#zoom/lat/lon is now in URL, but it is not responsive when I move the map, and doesn't override the coded centre if I offer the URL with different params.
Any idea what I'm getting wrong?

OK so I added var hash = L.hash(map); to the end of leaflet-hash.js and now it works.

Hi,
I am trying to add URL hash functionality to a page where I show cycling routes. https://tinyurl.com/y29xn3bx
As expected, I include leaflet-hash.js at the first lines of the code. Then I add  var hash = new L.Hash(map) after map is declared as below
var map = L.map('map', {minZoom: 1, maxZoom: 20, zoomControl: false});
Nothing changes if I write it after L.control.layers(baseMaps, overlayMaps,{collapsed:true}).addTo(map);
I get "TypeError: L.hash is not a constructor" warning. Also hash url does not appear in the URL.
Adding hash = L.hash(map); to the end of leaflet-hash.js did not work either. (Tried adding before })(window);)
Any suggestion or proper solution for that page is welcomed. Thanks.

If you receive the error TypeError: L.hash is not a constructor, you can fix by:

Use this in the <head>, from https://www.jsdelivr.com/package/npm/leaflet-hash

<script<EMAIL_ADDRESS>  type="text/javascript">

Update your JavaScript

var map = L.map('map')

// Create the hash, based on the map.
var hash = new L.Hash(map);


Planning version 0.8

This issue is to discuss priorities in the next version of the plugin.
The issues selected here should not preclude any PR merge, it's just a discussion to select which issues are necessary for getting at 0.8 release.

IMO the discussion should start from https://github.com/johnpryan/flutter_map/issues/174 .
Getting this right would at least get the package in the right track to address some other issues, even close some.
For sure doing this (probably) breaking change should be done as soon as possible.
The one I'm seeing as related and why:

https://github.com/johnpryan/flutter_map/issues/20 should blocking user interaction be a Layer? Is interactivity a Map, Layer or Plugin concern?
https://github.com/johnpryan/flutter_map/issues/79 creating a "Lazy" TileLayerOptions for the current tiles when converting them to plugins.
https://github.com/johnpryan/flutter_map/issues/59 when deciding how plugins should handle errors.
https://github.com/johnpryan/flutter_map/issues/14 how do we request forceRefresh for the layers.
https://github.com/johnpryan/flutter_map/issues/227 removing MaxZoom from TileLayerOptions.
https://github.com/johnpryan/flutter_map/issues/177 how to handle layer (plugin) boundaries.
https://github.com/johnpryan/flutter_map/issues/256 when implementing the Marker plugin sneaking in some form of state storage (maybe like PageView does) could be a good idea.
https://github.com/johnpryan/flutter_map/issues/385 should single plugins absorb gestures?

The problem is that this change needs to be well thought out as getting this wrong would be nasty.

Should 0.8 remove isUserGesture as said here https://github.com/johnpryan/flutter_map/issues/241 ?

#389 already removed it according to changelog

You are completely right.

Hi,
I implemented my own map view recently because we needed a completely different coordinate system for this app but I looked a lot at yours to get inspirations.
One thing that I always didn't like was the way the Layers were created with flutter_map and I decided here to go a different way which I want to show you
This here is my mapview (I removed unimportant stuff):
class LocalMapView extends StatefulWidget {
  final LocalMapOptions options;
  final List<LayerDefinition> layers;

  const LocalMapView({Key key, this.options, this.layers}) : super(key: key);
  @override
  LocalMapViewState createState() => LocalMapViewState();
}

As you can see I add factories for my layers als parameter here. LayerDefinition id defined:
abstract class LayerDefinition {
  Widget createLayer({
    LocalMapOptions options,
    CustomPoint<double> centerInMeter,
    double scale,
    CustomPoint<double> canvasSize,
  });
}

abstract class Layer  {
  final LocalMapOptions mapOptions;
  final CustomPoint<double> centerInMeter;
  final double scale;
  final CustomPoint<double> canvasSize;

  Layer(
      {Key key,
      this.mapOptions,
      this.centerInMeter,
      this.scale,
      this.canvasSize});
}

and for the different layers you derive a new LayerDefinition which can get any additional parameters like:
class PolylineLayerDefinition implements LayerDefinition {
  Stream<List<Polyline>> polylineUpdates;

  PolylineLayerDefinition({this.polylineUpdates});
  @override
  Widget createLayer(
      {LocalMapOptions options,
      CustomPoint<double> centerInMeter,
      double scale,
      CustomPoint<double> canvasSize}) {
    return PolylineLayer(
      polylineUpdates: polylineUpdates,
      canvasSize: canvasSize,
      centerInMeter: centerInMeter,
      mapOptions: options,
      scale: scale,
    );
  }
}

This approach is much cleaner and more direct than the current one with a big switch to check which type the LayerOption is and then  call a factory function.
By this I can easy pass in a Stream to forward any data changes only the Layer it concerns instead to rebuild the whole map_view.
In the map_view build function it looks like this:
      var layerStack = Stack(
        children: widget.layers
            .map((layerDef) => layerDef.createLayer(
                options: options,
                canvasSize: canvasSize,
                centerInMeter: centerMeter,
                scale: scale))
            .toList(),
      );

      Widget mapRoot;

      if (!options.interactive) {
        mapRoot = layerStack;
      } else {
        mapRoot = GestureDetector(
          onScaleStart: handleScaleStart,
          onScaleUpdate: handleScaleUpdate,
          onScaleEnd: handleScaleEnd,
          child: layerStack,
        );
   return mapRoot;
}

When using this MapView it looks like this:
              return LocalMapView(
                options: LocalMapOptions(
                  initialCenter: LatLng(map.latitude, map.longitude),
                  mapCenter: LatLng(map.latitude, map.longitude),
                  initialScale: 0.5,
                  maxScale: 2,
                  minScale: 0.05,
                  mPerPixel: map.mpp,
                  initialRotation: 0,
                  mapWidthPixel: map.width,
                  mapHeightPixel: map.height,
                ),
                layers: [
                  TileLayerDefinition(
                    tileImageProvider: mapTileService.getTile,
                  ),
                  PolygonLayerDefinition(
                      polygonUpdates:
                          polyStreamController.stream.asBroadcastStream()),
                  MarkerLayerDefinition(
                    markerUpdates:
                        markerStreamController.stream.asBroadcastStream(),
                  ),
                  PolylineLayerDefinition(
                    polylineUpdates:
                        lineStreamController.stream.asBroadcastStream(),
                  ),
                ],
              );

I just wanted to show this as a starting point if the package could move in this direction instead of moving all to plugins. The direct passing of LayerFactories is so much easier to understand and more powerfull than this here:
  Widget _createLayer(LayerOptions options, List<MapPlugin> plugins) {
    if (options is TileLayerOptions) {
      return TileLayer(
          options: options, mapState: mapState, stream: _merge(options));
    }
    if (options is MarkerLayerOptions) {
      return MarkerLayer(options, mapState, _merge(options));
    }
    if (options is PolylineLayerOptions) {
      return PolylineLayer(options, mapState, _merge(options));
    }
    if (options is PolygonLayerOptions) {
      return PolygonLayer(options, mapState, _merge(options));
    }

Which requires that all Layer types have to use the same parameters and to pass any other options over an Options object.
Please don't get me wrong, you created an awesome package. Perhaps we can improve the architecture a bit.
Cheers
Thomas

#177

Hopefully #458 would be taken under consideration when 0.8 is planned.

Any plans for https://github.com/johnpryan/flutter_map/issues/412

Thanks for the input everyone - 0.8.0 has been released (I bumped the minor version since Flutter 1.12 was just released).
I would like everyone to keep in mind that flutter_map is a community-maintained project. If you want a feature to be added, the best way is to make a pull request. The second-best way is to make a file a very clear and detailed issue, preferably with a link to the Leaflet equivalent, since this project is based on Leaflet.
If you are blocked by me, I'm happy to add you as a collaborator. Reach out to me and give me some examples of some pull requests or issues that you've made. the Kanban board is what I would like to use to track things. If you're interested in working on an issue, call it out in a comment and I will assign you.
happy flutter_mapping!

@johnpryan I'm actually a bit disappointed that I didn't get any feedback on my proposal to improve the overall architecture from you.

@escamoteur I think it got a little lost in the shuffle. Maybe you could file a new issue and link to it here so that people can give feedback

https://github.com/johnpryan/flutter_map/issues/490


QoL changes for better CI integration

This PR includes several quality of life changes for problems encountered during the CI actions update.
Mostly minor changes, but two things to take note of:

it fixes #154  by implementing non-clear mode in the OpenSSL PUT
it changes the exit code of the execute subcommand

I adapted the script evaluation-paper-2023/coverage.sh to the new execute exit code, so that we can rerun it with this new version of tlspuffin. @maxammann  @LCBH @aeyno Tell me if you expect this change to break any of your own scripts.

Due to popular demand, I'll reverse the changes on the execute command and add a new command instead, so that we keep full compatibility with our current coverage scripts.


Reify repo link in README

Hey @DmitryBarskov , nice to see you here :)) Could you also update line below with permalink, thank you

Hey :) Done


Magic Meter keeps showing current amount of magic as "NaN" instead of the actual amount.

As shown in the following picture:

Happens in both Chrome and Firefox, including on a fresh new game.

Please use the bug report form to file any bug reports, this helps me in troubleshooting the issue and saves us both time :)
Could you paste in your save-file? Without it I won't be able to pinpoint the issue!


No legacy script tag in HTML

Environment

Operating System: Darwin
Node Version:     v16.15.0
Nuxt Version:     2.16.0-27720022.54e852f
Nitro Version:    0.6.1
Package Manager<EMAIL_ADDRESS>Builder:          vite
User Config:      bridge, serverHandlers, devServerHandlers, typescript, buildModules
Runtime Modules:  -
Build Modules<EMAIL_ADDRESS>
Reproduction
https://github.com/IlyaSemenov/nuxt-no-legacy-script-repro
git clone https://github.com/IlyaSemenov/nuxt-no-legacy-script-repro
yarn
yarn build
yarn start

Open http://localhost:3000. There will be no legacy scripts, only <script type="module">. The button will not work in legacy browsers that don't support script modules.
Describe the bug
The app built with the latest @nuxt/bridge doesn't work in legacy browsers such as Chrome 49 (the last Chrome that works on Windows XP). The actual app scripts are processed with @vitejs/plugin-legacy (and will work in Chrome 49 if loaded) but the HTML code only includes <script type="module"> code which is not supported by legacy browsers.
This is all kind of self-contradicting. <script type="module"> are supposed to load non-legacy scripts for modern browsers. Instead, the current bridge doesn't load modern scripts at all, but loads legacy scripts with modern <script> tag.
Additional context
No response
Logs
No response

I traced the problem to this code:
https://github.com/nuxt/bridge/blob/fcf636d647c19c69cccf1cad788614e3311c91db/src/vite/manifest.ts#L107-L110
For some reason bridge deliberately marks legacy chunks as module: true which is incorrect. Changing that to module: false (and a couple more patches per https://github.com/nuxt/bridge/issues/340#issuecomment-1313554799 and https://github.com/nuxt/bridge/discussions/341) makes the build work in Windows XP / Chrome 49.


Implemented check for mandatory empty elements and attributes

Fixes #7

As stated in #7, I would like to throw an exception in case of an empty string element. I have just tested this internally for missing mandatory elements: apart from the 2 externalObjects tests, all tests run successful with this change. Therefore I would like to adopt this behaviour for empty string checks as well.

Regarding optional elements, we have two options now:
                        if (f.cardinality == Cardinality::Optional && f.typeName == "std::string") {
                            cpp << "if (" << f.fieldName() << " && " << f.fieldName() << "->empty()) {";
                            {
                                Scope s(cpp);
                                cpp << "throw CTiglError(\"Optional " << (isAtt ? "attribute " : "element ") << f.cpacsName << " is empty at xpath \" + xpath);";
                            }
                            cpp << "}";
                        }

or
                        if (f.cardinality == Cardinality::Optional && f.typeName == "std::string") {
                            cpp << "if (" << f.fieldName() << " && " << f.fieldName() << "->empty()) {";
                            {
                                Scope s(cpp);
                                cpp << f.fieldName() << " = boost::none;";
                            }
                            cpp << "}";
                        }

Version 1 enforces clearer intent in CPACS files, version 2 is more tolerant. I slightly prefer version 1, but I am also fine with version 2. What do you think?

Version 1 is cleaner, sure.
But it is not consistent with the other checks, where we just write a Log message if an error occured. (See e.g. https://github.com/DLR-SC/tigl/blob/cpacs_3/src/generated/CPACSComponentSegment.cpp#L60).
I think we should decide, whether we want to abort, if the file is not schema conforming, or whether we just inform the user. I suppose that there are many invalid files out there. Probably also, just because TiGL accepts them anyhow.

Then we will take version 2.


(Oscar 3.2) by default the components in the Components pane should be opened 1 level

By opening the first level, the component organization is revealed and provides easy navigation to a desired collection of packages:

If we implement this feature, then it would also be nice to have appropriate component selected when one does a find class (or equivalent) in the project browser

Fixed as part of work to support Rowan V3.0

In the absence of a components pane in 3.2.9, not going to worry too much about this (since then I'd have to figure out the relationship between components and packageGroups)


Fix Ladybug doesn't wait for database connection

Fix for https://github.com/wearefrank/ladybug/issues/223


No listeners executed

I run this hubot using docker on ubuntu 16.04. Then intro was shown on slack successfully, but he always response "I'm sorry, I didn't understand that. Try typing '@oneview help' to see a list of my capabilities." no matte what i type such as "@oneview show dashboard".
And i found like below log. '[Wed May 09 2018 07:20:52 GMT+0000 (UTC)] DEBUG No listeners executed; falling back to catch-all'

Thank you for reply. "@oneview help" does not return any response.
bash-4.3# bin/hubot --name $HUBOT_NAME $PARMS
npm WARN invalid config https-proxy=""
npm WARN invalid config Must be a full url with 'http://'
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
[Thu May 17 2018 01:57:34 GMT+0000 (UTC)] DEBUG Loading adapter slack
[Thu May 17 2018 01:57:35 GMT+0000 (UTC)] DEBUG slack rtm client options: undefined
warn: SlackDataStore is deprecated and will be removed in the next major version. See project documentation for a migration guide.
warn: SlackDataStore is deprecated and will be removed in the next major version. See project documentation for a migration guide.
[Thu May 17 2018 01:57:35 GMT+0000 (UTC)] DEBUG slack rtm start with options: {}
[Thu May 17 2018 01:57:36 GMT+0000 (UTC)] INFO Logged in as oneview of Cloud Core TU
[Thu May 17 2018 01:57:36 GMT+0000 (UTC)] INFO Slack client now connected
[Thu May 17 2018 01:57:36 GMT+0000 (UTC)] DEBUG Loading scripts from /home/docker/hubot/scripts
[Thu May 17 2018 01:57:37 GMT+0000 (UTC)] INFO Applying configuration from oneview-configuration.json file.
[Thu May 17 2018 01:57:37 GMT+0000 (UTC)] INFO Initializing NLP
[Thu May 17 2018 01:57:37 GMT+0000 (UTC)] INFO Initializing OneView client
[Thu May 17 2018 01:57:37 GMT+0000 (UTC)] DEBUG Parsing help for /home/docker/hubot/scripts/oneview.js
[Thu May 17 2018 01:57:37 GMT+0000 (UTC)] INFO /home/docker/hubot/scripts/oneview.js is using deprecated documentation syntax
[Thu May 17 2018 01:57:37 GMT+0000 (UTC)] DEBUG Loading scripts from /home/docker/hubot/src/scripts
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO Connecting to SCMB on host <IP_ADDRESS>
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO Connected to SCMB. Waiting for messages.
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO Successfully logged into host <IP_ADDRESS>
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO Logged into OneView.
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO Applying configuration from json file.
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO Configured with notification filters []
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) (.*?)\/rest\/([a-zA-Z0-9_-]*?)\/([a-zA-Z0-9_-]*?) json\.$/i namedGroups: [ '', 'host', 'category', 'id' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) (.*?)\/rest\/([a-zA-Z0-9_-]*?)\/([a-zA-Z0-9_-]*?) clean\.$/i namedGroups: [ '', 'host', 'category', 'id' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:turn|power) on (.*?)(?:\/rest\/server-hardware\/)([a-zA-Z0-9_-]*?)\.$/i namedGroups: [ '', 'host', 'serverId' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:turn|power) off (.*?)(?:\/rest\/server-hardware\/)([a-zA-Z0-9_-]*?)\.$/i namedGroups: [ '', 'host', 'serverId' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) all (?:server ){0,1}hardware\.$/i namedGroups: [ '' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) (.*?)(?:\/rest\/server-hardware\/)([a-zA-Z0-9_-]*?) utilization\.$/i namedGroups: [ '', 'host', 'serverId' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) (.*?)(?:\/rest\/server-hardware\/)([a-zA-Z0-9_-]*?) all utilization\.$/i namedGroups: [ '', 'host', 'serverId' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) (?!\/rest\/server-profiles\/)(.*?)(?:\/rest\/server-hardware\/)([a-zA-Z0-9_-]*?)\.$/i namedGroups: [ '', 'host', 'serverId' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) (?:all ){0,1}(critical|ok|disabled|warning*?) (?:server ){0,1}hardware\.$/i namedGroups: [ '', 'status' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) (?:all ){0,1}(powered on|powered off*?) (?:server ){0,1}hardware\.$/i namedGroups: [ '', 'powerState' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) all (?:server ){0,1}profiles\.$/i namedGroups: [ '' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) (.*?)(?:\/rest\/server-profiles\/)([a-zA-Z0-9_-]*?)\.$/i namedGroups: [ '', 'host', 'profileId' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) (.*?)(?:\/rest\/server-profiles\/)([a-zA-Z0-9_-]*?) compliance(?: preview){0,1}\.$/i namedGroups: [ '', 'host', 'profileId' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:update|make) (.*?)(?:\/rest\/server-profiles\/)([a-zA-Z0-9_-]*?) (?:compliance|compliant)\.$/i namedGroups: [ '', 'host', 'profileId' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:turn|power) on (.*?)(?:\/rest\/server-profiles\/)([a-zA-Z0-9_-]*?)\.$/i namedGroups: [ '', 'host', 'profileId' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:turn|power) off (.*?)(?:\/rest\/server-profiles\/)([a-zA-Z0-9_-]*?)\.$/i namedGroups: [ '', 'host', 'profileId' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) (?:all ){0,1}(critical|ok|disabled|warning*?) (?:server ){0,1}profiles\.$/i namedGroups: [ '', 'status' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) all (?:server profile ){0,1}templates\.$/i namedGroups: [ '' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) available (?:hardware|targets) for (.*?)(?:\/rest\/server-profile-templates\/)([a-zA-Z0-9_-]*?)\.$/i namedGroups: [ '', 'host', 'templateId' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) profile[s]{0,1} (?:using|deployed from|deployed by) (.*?)(?:\/rest\/server-profile-templates\/)([a-zA-Z0-9_-]*?)\.$/i namedGroups: [ '', 'host', 'templateId' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:deploy|create) (\d+) profile[s]{0,1} (?:from|for|using) (.*?)(?:\/rest\/server-profile-templates\/)([a-zA-Z0-9_-]*?)\.$/i namedGroups: [ '', 'count', 'host', 'templateId' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:flex|grow)(?: the)? (.*?)(?:\/rest\/server-profile-templates\/)([a-zA-Z0-9_-]*?) by (\d+)(?: profile| profiles| hardware| servers)?\.$/i namedGroups: [ '', 'host', 'templateId', 'count' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:undeploy|remove) (\d+) profile[s]{0,1} (?:from|that were deployed from|that were using) (.*?)(?:\/rest\/server-profile-templates\/)([a-zA-Z0-9_-]*?)\.$/i namedGroups: [ '', 'count', 'host', 'templateId' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:undeploy|remove) (\d+) server[s]{0,1} (?:from|that were deployed from|that were using) (.*?)(?:\/rest\/server-profile-templates\/)([a-zA-Z0-9_-]*?)\.$/i namedGroups: [ '', 'count', 'host', 'templateId' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:fix)(?: all)? compliance(?: issues)? for (.*?)(?:\/rest\/server-profile-templates\/)([a-zA-Z0-9_-]*?)\.$/i namedGroups: [ '', 'host', 'templateId' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /show (?:oneview ){0,1}(?:dashboard|status).$/i namedGroups: [ '' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) last ([0-9]*?) alerts\.$/i namedGroups: [ '', 'count' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /(?:get|list|show) all (active|locked|cleared){0,1}(?: ?)(critical|warning|ok|disabled){0,1}(?: ?)alerts(?: from ){0,1}(today|last 7 days|last 30 days){0,1}\.$/i namedGroups: [ '', 'state', 'status', 'time' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /help\.$/i namedGroups: [ '' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /What can you do(?: for me){0,1}\.$/i namedGroups: [ '' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO { /([a-zA-Z][a-z A-Z]*?) help\.$/i namedGroups: [ '', 'text' ] }
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO Found server hardware: (Name: AzS-Node01, URI: <IP_ADDRESS>/rest/server-hardware/35423251-4131-4753-4837-343757373030)
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO Found server hardware: (Name: AzS-Node02, URI: <IP_ADDRESS>/rest/server-hardware/35423251-4131-4753-4837-343757365953)
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO Found server hardware: (Name: AzS-Node03, URI: <IP_ADDRESS>/rest/server-hardware/35423251-4131-4753-4837-343757365956)
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO Found server hardware: (Name: AzS-Node04, URI: <IP_ADDRESS>/rest/server-hardware/35423251-4131-4753-4837-343757365958)
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO Found server profile: (Name: AzS-Node03, URI: <IP_ADDRESS>/rest/server-profiles/1d641509-f3bc-4820-9663-e56c9473928f)
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO Found server profile: (Name: AzS-Node01, URI: <IP_ADDRESS>/rest/server-profiles/3a491904-505e-4478-b633-386999cdb8b2)
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO Found server profile: (Name: AzS-Node02, URI: <IP_ADDRESS>/rest/server-profiles/ae1aeeb8-bf47-4e40-880c-b2a3f8cdb5f5)
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO Found server profile: (Name: AzS-Node04, URI: <IP_ADDRESS>/rest/server-profiles/f46a97b4-feaf-4f58-ae52-b7863f734fed)
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO Found server profile template: (Name:  [Previous SPT Backup - SPP Version:2<IP_ADDRESS>], URI: <IP_ADDRESS>/rest/server-profile-templates/e7774759-e237-429b-8fcf-25f0ff5614da)
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] INFO Found server profile template: (Name: AzS Scale Unit Nodes (DL380 Gen9), URI: <IP_ADDRESS>/rest/server-profile-templates/ec056be0-865f-4669-a8f0-d7d6543f172a)
[Thu May 17 2018 01:57:38 GMT+0000 (UTC)] DEBUG Sending to #testbot: Hello, I'm oneview! Your OneView instance is currently showing:
	• 4 server(s).
	• 4 server profile(s).
	• 2 server profile template(s).
How can I assist you? Type '@oneview help' to learn what I can do.
[Thu May 17 2018 01:58:02 GMT+0000 (UTC)] DEBUG Received message: '@oneview help' in channel: testbot, from: takayuki-mitsui
[Thu May 17 2018 01:58:02 GMT+0000 (UTC)] DEBUG Took 2ms to resolve dependencies, normalized string:  @oneview<IP_ADDRESS>/rest/server-profile-templates/e7774759-e237-429b-8fcf-25f0ff5614dahelp.
[Thu May 17 2018 01:58:02 GMT+0000 (UTC)] DEBUG No listeners executed; falling back to catch-all
[Thu May 17 2018 01:58:02 GMT+0000 (UTC)] DEBUG Took 1ms to resolve dependencies, normalized string:  @oneview172<IP_ADDRESS>/rest/server-profile-templates/e7774759-e237-429b-8fcf-25f0ff5614da22<IP_ADDRESS>/rest/server-profile-templates/e7774759-e237-429b-8fcf-25f0ff5614da<IP_ADDRESS>/rest/server-profile-templates/e7774759-e237-429b-8fcf-25f0ff5614da<IP_ADDRESS>/rest/server-profile-templates/e7774759-e237-429b-8fcf-25f0ff5614da115/rest/server-profile-templates/e7774759-e237-429b-8fcf-25f0ff5614dahelp.
[Thu May 17 2018 01:58:02 GMT+0000 (UTC)] DEBUG Executing listener callback for Message '[object Object]'
[Thu May 17 2018 01:58:02 GMT+0000 (UTC)] DEBUG Sending to CAKUC0AD9: [object Object]

Thanks for providing the log. I'm not sure what's happening. Would it be possible for you to choose a different name for your bot, something other than oneview?

@danielreed Using another name - that is 'stack' was no effect to output

@tkykm have you tried manually building this project and not using the Docker install? We are not sure why the listeners are not working.

@danielreed Not yet. I will Try out manually building and debugging.


fix: removed orphaned require

the typehints file was renamed to types and included elsewhere, removing this fixes the call to the nonexistent file.

wrong repo lol


Improve naming

I (Lucas) will spend half an hour on that this morning (Monday) to see if that's very quick to fix, otherwise I will work on that next week.

@W95Psp what's the state here? Is this still in progress?

Yes, that's in progress. I spent some time on that on Monday, but it's not done yet, some WIP state can be found on branch https://github.com/AeneasVerif/eurydice/tree/lucas/improve-names.


Shop title is not a link back to home

Clicking the shop title should navigate back to the root url  "home" page, but it is not a link.

Closing as dup of #66


Add port expander integrated in ADC ADS114S08

Implement the port expander which is integrated in the ADC ADS114S0x.

depends on completion of #55537 and #54911

Rebased the PR as #54911 is merged and made it independent of #55537. This will cause a merge conflict if the latter one is merged first, but having them independent is probably easier overall.


ergoCubSN001 gravity compensation / compliant mode does not work as intended

Task description
While debugging torque control with @LoreMoretti and @danielePucci, we noticed that switching on compliant mode of the upper body of the ergoCubSN000 the gravity compensation was not working as intended, i.e. by decreasing the stiffness the arm or the torso the joint was not remaining still.  Interestingly, running a gravity compensation "externally" (for example via https://github.com/vvv-school/tutorial_impedance-control/) seems to work fine, indicating that somehow the gravity compensation computed by wholebodynamics device was not working correctly. As both methods used the same model, perhaps the difference may be in the source of kinematic information used by WBD? If anyone is interested in investigating this, a first test could be to change this. From the configuration file in https://github.com/icub-tech-iit/ergocub-software/blob/10670acf8120bdaad19c6cb01388eff555f4f356/urdf/ergoCub/conf/estimators/wbd_ecub_sim.xml#L10C22-L10C34 it seems that wbd is using the head IMU, but according to @GiulioRomualdi this is not the case anymore, so the first thing to do would be to double check this.
Unfortunately I do not have detailed software version information of the software used in the tests, perhaps @LoreMoretti has more info.
Definition of Done
Commit in master branch a wbd configuration file for which compliant mode works "fine", i.e. by decreasing the stiffness the robot keep its position.

Here is the bug https://github.com/robotology/robots-configuration/blob/devel/ergoCubSN001%2Festimators%2Fwholebodydynamics.xml#L10
The imu used is the root link imu but the link is the head one

Here is the bug https://github.com/robotology/robots-configuration/blob/devel/ergoCubSN001%2Festimators%2Fwholebodydynamics.xml#L10
The imu used is the root link imu but the link is the head one

Great, thanks!

Fix proposed in https://github.com/robotology/robots-configuration/pull/614 . Note that probably this did not only affected the gravity compensation torques, but also the torque estimation.

@traversaro I checked the configuration I was using for the paper to be sure that the results were correct and it was correct (luckily). Indeed I set the parameter assume_fixed and the frame was root_link.
See:
https://github.com/ami-iit/robots-configuration/blob/4edd9f0993c9e1bf31e3652d67fc7b5d6c38b4ac/ergoCubSN000/estimators/wholebodydynamics.xml#L10

@traversaro I checked the configuration I was using for the paper to be sure that the results were correct and it is correct (luckily). Indeed I set the parameter assume_fixed and the frame was root_link.
See: https://github.com/ami-iit/robots-configuration/blob/4edd9f0993c9e1bf31e3652d67fc7b5d6c38b4ac/ergoCubSN000/estimators/wholebodydynamics.xml#L10

Great!

@traversaro is this issue fixed by https://github.com/robotology/robots-configuration/pull/614 or we need to change also the urdf?

In theory no change should be done in the URDF, in practice until this is tested is difficult to be 100% sure.

This test has been done? Can we close it?

We tested today as per this comment.
I think we can close this issue.

Actually this issue was to track the switch to compliant mode via yarpmotorgui, I am not sure this was tested today. I expect it to work, but I think we can quickly check this on Monday.

Actually this issue was to track the switch to compliant mode via yarpmotorgui, I am not sure this was tested today. I expect it to work, but I think we can quickly check this on Monday.

@traversaro @LoreMoretti did you checked it?

I did not, today there are some demos, we can check after the demos.


private/appnet: remove SvcResolutionFraction

Clean up unused code paths related to old pre-QUIC-RPC-era service address resolution and the ominous SvcResolutionFraction.

This change is


[SPARK][STREAMING] running events for long running jobs

Streaming jobs are often long running. Currently we emit START event and COMPLETE which may be sent a week after. For streaming jobs it makes sense to emit RUNNING events in interval specified via config. This is done for Flink integration

Some additional remarks:

Spark offers 2 modes of operation for streaming. These are:
Micro-batching (the default)
Continuous

In the case of micro-batching, the conventional listener approach works.
In the case of continuous, I have no knowledge. You may have to implement the StreamingQueryListener. I don't know what that interface looks like.


Support React 0.13

https://github.com/FormidableLabs/radium/blob/master/package.json#L24 and https://github.com/FormidableLabs/radium/blob/master/package.json#L33 have it hardcoded as 0.12

+1

Sorry for the wait, y'all. Resolved in 155fd07fe803ec9301cae336daf03ddeba676253.


Log4j security breach

Hello,
I read here that the log4j module had security vulnerabilities and that version 2.17.0 of this software should be used for Java 8.
What can you say about this regarding TDP please ?
Thank you,
C.L.

Hello,
Any advice about it please ?
Thanks again !
C.L.

Hello @ChristopheLRTE,
Most of the components of TDP use old version of Log4j (1.x) and are not subject to CVE-2021-44228
The only affected AFAIK is Hive which uses log4j 2.10.0 for which I created https://github.com/TOSIT-IO/hive/issues/2

Hello !
Sorry for the inconvenience, but I allow myself to insist (sorry in advance) because security issues can compromise the acceptance of production of the TDP.
If there is no risk from your point of view, do not hesitate to let us know, it will be reassuring for us.
Thanks again for your help.

Oh, ok, sorry.
I had not seen your comment. Thank you !
At first, we are not going to use Hive.
So we'll have time to deal with this by then.
Thanks again and have a nice day
C.L.


SSHHOME is incorrect (deleted) when resuming Tmux sessions

I find that upon SSHRC'ing back into a box a second time with a Tmux session left running, the variable $SSHHOME is invalid because the folder has been deleted.
Probably easiest to explain with a log:
# first time to connect to the server
$ sshrc my-remote-server.com

remote $ tmux -S /tmp/matt.tmuxserver

remote $ echo $SSHHOME
/tmp/.mattheworiordan.sshrc.fZxN

# check to see if the folder & contents exist
remote $ ls $SSHHOME
bashsshrc  sshrc  sshrc.bashrc

# Detach from tmux
Ctrl-B, Ctrl-D

# second connect to the server
$ sshrc my-remote-server.com

# Checking SSHHOME confirms a new folder has been created
remote $ echo $SSHHOME
/tmp/.mattheworiordan.sshrc.GD0

# Attach to the Tmux session
remote $ tmux -S /tmp/matt.tmuxserver

# SSHHOME still points to the old folder
remote $ echo $SSHHOME
/tmp/.mattheworiordan.sshrc.fZxN

# Unfortunately SSHHOME does not exist
remote $ ls $SSHHOME
ls: cannot access /tmp/.mattheworiordan.sshrc.fZxN: No such file or directory

What do you recommend to get around this problem?

Yea, this problem requires some clever tricks to avoid. But fortunately, they are already in the readme! If you consult the provided tmuxrc function:
tmuxrc ()
{
    local TMUXDIR=/tmp/russelltmuxserver;
    if ! [ -d $TMUXDIR ]; then
        rm -rf $TMUXDIR;
        mkdir -p $TMUXDIR;
    fi;
    rm -rf $TMUXDIR/.sshrc.d;
    cp -r $SSHHOME/.sshrc $SSHHOME/bashsshrc $SSHHOME/sshrc $SSHHOME/.sshrc.d $TMUXDIR;
    SSHHOME=$TMUXDIR SHELL=$TMUXDIR/bashsshrc /usr/bin/tmux -S $TMUXDIR/tmuxserver $@
}

You will notice that it takes a step to copy the contents of your old $SSHHOME into a special tmux directory that will not be deleted when your original shell exits. Of course, you'll have to modify the TMUXDIR to be your own /tmp/mattheworiordantmuxserver, but otherwise you should be good to go.

Thanks @Russell91, you're a legend.  I had misinterpreted your example, but I understand it now and have it all working as expected.

Okay, is there any way that the Readme example could have been more clear?

@Russell91 I think it was my fault because I tried to modify it for my needs.  The only thing I did find odd is that in your example you execute Tmux as follows:
SSHHOME=$TMUXDIR SHELL=$TMUXDIR/bashsshrc /usr/bin/tmux -S $TMUXDIR/tmuxserver $@

However, the bashsshrc file, at least in my environment, simply loads .sshrc so it loads itself?


Continuous Wavelet Spectrum - Example for NINO3 SST

In'Continuous Wavelet Spectrum - Example for NINO3 SST ',Here lag1 = 0.72,both α1 and α2 >0. TC98 says explicitly that "this red-noise was estimated from( α1+√α2) /2 where α1and α2 are the lag-1 and lag-2 autocorrelations of the Niño3 SST". So this is NOT a constant value, valid for each and every time series, but one which must be estimated.
when α1<0,especially α2<0,how to compute it? Look forward for your reply.

In practice, the function only requires lag1 when you calculate sig. And you can calculate it directly from the original time series.


CFP: Have a shorter CT expiration when a connection is in half closing status.

Cilium Feature Proposal
Is your proposed feature related to a problem?
In eBay, we have our SLB solution. It is implemented in DSR (Direct Server Return) mode.  User's connection request is going through the node but the response doesn't. When we deploy Cilium on the network nodes,  Cilium leaves a lot of CT entries left in RxClosing but not TxClosing status These CT entries can't reach to the final closed status. They are expired in 6 hours which is the default expiration time for active connection. It ends up with a big CT Map required for the network nodes. But most of them are not for active connections.
Describe the feature you'd like
This proposal is to have a separate expiration time for half closing CT entries. The expiration timeout should be much shorter such as
(Optional) Describe your proposed solution
The implementation will be straightforward. If this feature makes sense, I can submit a PR for this.

:wave: that sounds interesting indeed! Your suggested improvement would specifically be about CT_SERVICE entries on the load-balancer node, correct?
Naively I would have expected that the relevant code already handles this (https://github.com/cilium/cilium/blob/fb996faa66d8ebc735b0143e4b75c2cfe64480eb/bpf/lib/conntrack.h#L313), so maybe we're just missing a condition there. Could you have a look at that code part, and check why it's not helping in your scenario?
(would definitely be interested in having a look at the PR, if you already have a draft change :+1: )

(note that in the case of CT_SERVICE entries, I believe this would be also relevant to non-DSR setups. CT_SERVICE entries don't track replies when they pass through the LB.)

@julianwiedmann Thanks for checking this request. I refer to the CT entries other than CT_SERVICE such as CT_INGRESS or CT_EGRESS. I am raising the PR to show what exactly I was trying to propose. Since the number of connections (in DSR mode) are extremely large in the load-balancer node in eBay, this change will help to reduce the total number of CT entries in the BPF map.

I refer to the CT entries other than CT_SERVICE such as CT_INGRESS or CT_EGRESS.

ok, that's curious. When using DSR, the LB node avoids creating CT_EGRESS entries for LBed connections. And I see even less reason for creating CT_INGRESS entries on the LB node.
Are you up for debugging in a bit more detail what's going on? Let's understand whether this is a bug / mis-config, before we add config options to work-around unexplained behaviour.
For a start, can you share a (sanitized) sysdump? A snapshot of your cilium config? A dump of the CT map that shows these CT_INGRESS / CT_EGRESS entries? Is the LB node running in XDP mode?

We are still using our own SLB solution (BGP + ipvs + ipip tunnel). We are not moving to Cilium XDP LB yet.

We are still using our own SLB solution (BGP + ipvs + ipip tunnel). We are not moving to Cilium XDP LB yet. Also we haven't enabled KPR (Kube-proxy-replacement) feature either.
When we deploy cilium-agent on such a node, the CT map has all connections going through the node I believe. I've seen the map has both CT_INGRESS and CT_EGRESS.

Ah suddenly this makes a lot more sense :).
If you have your own DSR LB-logic in ipvs, then yes that should result in
CT_INGRESS: client -> vip
CT_EGRESS: client -> backend

and those entries never fully closing, as the LB is not observing the return traffic.

Our SLB have a lot of connections which end up with too many (like millions) CT entries left in the BPF map. We need the enhancement to cleanup the half closed connection sooner.


User friendly error msg if provided file path was wrong

If the filename provided in cargo run edit <filename> does not exist in the current dir, fuzzy matching should be done to see if any similar filenames exist. If no similar filename is found, the files and folders of the current dir should be printed.

Editor is no longer being worked on, and has been removed from the repo. Closing.


Request_URI environment variable behaving oddly

The compounding factor here is that we're using mod_php, which complicates the code-path.
The problem we're trying to solve is to find a way to allow certain PHP routes, not files, to bypass the auth restrictions on the directory. This module has been working for us for some time, but we need to make some changes. Here is a significant <Directory> entry:
<Directory "/opt/homeapp/web">
  AuthType openid-connect
  # File
  SetEnvIf Request_URI "^/(callbacks.php.*)$" allow
  # Route
  SetEnvIf Request_URI "^/oauth/(.*)$" allow
  # CatchAll
  SetEnvIf Request_URI "(.*)" test_uri=$1

  require claim hd:example.com
  require env allow
  require valid-user
</Directory>

We're setting some environment variables on a specific file, and allowing it to bypass the OIDC require. This works for files. It doesn't work for routes. The test_uri env-var is used to capture the state of Request_URI at the time of the SetEnvIf statement.
To trace this, I modified the LogFormat to add %{Request_URI}e %{test_url}e at the end of our log-lines, to see what they get logged as. This works, and I was able to see a difference.
<IP_ADDRESS> - - [17/Mar/2017:19:04:33 +0000] "GET /oauth/token HTTP/1.1" 400 68 "-" "curl/7.35.0" /oauth/token /index.php
<IP_ADDRESS> - - [17/Mar/2017:19:05:08 +0000] "GET /oauth/token HTTP/1.1" 302 631 "-" "curl/7.35.0" - /index.php

The first line here was done with the AuthType and require statements commented out. You can see that Request_URI is set to oauth/token, and test_uri is set to /index.php. When I uncomment, we get the OIDC redirect (302 status code); Request_URI is unset, which is why it shows up as -. test_uri is still set to /index.php.
Either way, we can't use the SetEnvIf trick for routes. It could be that Apache normally doesn't preserve Request_URI when it's issuing a 30x redirect, but this still seems like a bug.

I don't think I follow. Why not use separate <LocationMatch> directives and include the ones for the File and Route paths before the CatchAll?

In my experience, LocationMatch hasn't ever matched a route. Take this:
    <LocationMatch "^/(editor|oauth)/">
      SetEnv test_uri "oauthing"
    </LocationMatch>

    <Location "/oauth/">
      SetEnv test_uri "MatchRoute"
    </Location>

    <Location "/">
      SetEnv test_uri "MatchIndexing"
    </Location>

    <Directory "/opt/homeapp/web">
      # Require info as before
    </Directory>

What I get in the logging when attempting to hit '/callback.php', is "MatchIndexing". When I do a route, such as /oauth/token that value is unset by the time it gets to logging.
However, when I comment out the AuthType and Require lines in the Directory statement, hitting /oauth/token now returns "MatchIndexing". The AuthType openid-connect statement does seem to modify the environment enough that these matches no longer function.

Directory is interpreted before Location. What if you use Location/LocationMatch everywhere and get rid of Directory primitives?

So I tested this...
    <LocationMatch "^/(editor|oauth)">
      SetEnv test_uri "editing"
    </LocationMatch>

    <Location "/oauth/">
      SetEnv test_uri "MatchRoute"
    </Location>

    <Location "/">
      SetEnvIf Request_URI "index.php$" test_uri=MatchIndex
      SetEnvIf Request_URI "(.*)" test_uri=root_$1
      # AuthType openid-connect
      # require claim hd:example.com
      # require valid-user
    </Location>

Hitting this with /oauth/token, gives me test_uri of MatchIndex. This suggests that Request_URI is set to index.php at the stage of processing where the Location directives are handled.
Changing it to remove the comments:
    <LocationMatch "^/(editor|oauth)">
      SetEnv test_uri "editing"
    </LocationMatch>

    <Location "/oauth/">
      SetEnv test_uri "MatchRoute"
    </Location>

    <Location "/">
      SetEnvIf Request_URI "index.php$" test_uri=MatchIndex
      SetEnvIf Request_URI "(.*)" test_uri=root_$1
      AuthType openid-connect
      require claim hd:example.com
      require valid-user
    </Location>

I'm not sure what to conclude here. Remember that the authentication phase, which included the redirect that mod_auth_openidc does, is triggered before SetEnvIf does its work. The authorization phase -  i.e. executing the Required directives - happens in a later phase, after the claims have been set by mod_auth_openidc and the SetEnvIf commands have been executed.
If you want to exclude locations from authentication you can do that using ordered Location directives, it wouldn't work by setting environment variables as you can conclude from the above.
I'm just trying to wrap my head around what you want to achieve and provide some alternatives. I don't actually see a a bug up to now.

Seems I got my wires crossed on the ordering earlier, it should be reversed: most specific last. So I believe you should be able to sort this out with:
<Location /protected/allow>
        Require all granted
</Location>

<Location /protected>
       AuthType openid-connect
       Require valid-user
</Location>

etc.

After much back and forth, I was able to figure out a way to get the behavior I need. It isn't elegant, and Location set to anything other than root simply never worked for any route. Whatever data Location and LocationMatch check against, is already rewritten to index.php by the time they execute. However, an Expression worked.
    <Location "/">
        <If "%{THE_REQUEST} =~ m#[GET|POST] /oauth#" >
          SetEnvIf Request_URI "(.*)" allow
        </If>
         SetEnvIf Request_URI "^/(callbacks.php.*)$" allow
         AuthType openid-connect
         require claim hd:example.com
         require env allow
         require valid-user
    </Location>

This takes advantage of an Apache Expression matching on THE_REQUEST, which is the full request, including verb and query-string if any. Unlike REQUEST_URI it doesn't seem to get rewritten by whatever is rewriting it for the SetEnvIfs.

I believe the rewriting to index.php originates from other Apache settings like DirectoryIndex that may be enabled or disabled on specific locations/routes.
This seems to be an Apache config issue and I would like people to try my earlier suggestion before reverting to the solution that you provide :-|
Nevertheless thanks for reporting and helping out. 👍


Is it possible to use same one signal app for multiple react native app  ?

I have two different RN App on android, I want to use same OS app id in both applications. Is it possible ?

Hello,
Each app will need its own app id. Why do you want to do this?

I was planning to share same codebase with multiple application. So thought of using the same OS app . Thank you !

No problem!


Make output of detekt serializable

I'm not even sure if Finding2 should have an Entity. I think that it would be great to make Finding2 serializable some how (json, sarif...). And Entity has a refenrece to a KtElement and that can not be serializable.
I think that this change would be good because:

The reporters shouldn't work with the complexity of Entity. We should need to expand Finding to contain the locations and those things but that's it.
We could change our gradle plugin and have one task to run detekt and another to generete the reports. This would make really fast the use case of execute detekt and then execute detektBaseline.
Merge reports would be way, way easier. You would get a List<Detektion> and then you decide how to merge them but you have all the information there.

The cons:

Right now the html report uses Entity to generate the code snippets. If we don't provide the Entity we should look for other ways to implement that.

Right now the html report uses Entity to generate the code snippets.

Same for markdown

This issue is stale because it has been open 90 days with no activity. Please comment or this will be closed in 7 days.

This issue is stale because it has been open 90 days with no activity. Please comment or this will be closed in 7 days.

I'm working on this now.
The main blocker for making Detektion serializable is that Issue contains an Entity and Entity contains a reference to a KtElement and the KtElement is not serializable.
The first step is to create a new Entity class for Issue. Right now CodeSmell and Issue share the same implementation of Entity but that should change because we need to remove KtElement from Issue but we can't do that for CodeSmell. At the CodeSmell level we need the KtElement to know if we should suppress for a @Suppress annotation and other similar use cases.
For that reason I started simplifying Entity: #7470
Also we need to change the Location class inside Entity.
At the level of CodeSmell we always want to play with absolute paths. The absolute paths are less error prone when you want to access the files. But at the Issue level we want to work only with relative paths. The Issue is the element that will be serialized so it should be relative to work well with the gradle cache. Also the reports that we generate (html, xml...) should be also relative paths so this change should make those less error prone. But the console output should still be absolute. There are a lot of things to tune.
You should expect a lot of PRs improving our tests to ensure that the paths that we show are the correct ones.

Ok, I have the first part of this ready. I was able to remove KtElement and make location.path relative keeping all working as before. I can't launch yet the PRs because there are already a lot of PRs open with lots of dependencies.
Once I get this first part merged the second part is to make Issue serializable but that should be easy. I vote to use json for that serialization but I accept other ideas.

I vote to use json for that serialization but I accept other ideas.

Json sounds fine to me 👍 human readable and we can use kotlinx serialization for it

This issue is stale because it has been open 90 days with no activity. Please comment or this will be closed in 7 days.


binding for rust

Hey @ikatyang it would be great if there's a binding for rust. I tried to do it my self using tree-sitter guide but failed to do so many times. Here how tree-sitter-rust does it https://github.com/tree-sitter/tree-sitter-rust/tree/master/bindings/rust.
Thanks

👉 https://crates.io/crates/tree-sitter-markdown

:heart: can't wait to start experimenting and try to build something reusable. Thanks @ikatyang


docs: use Request::is() instead of getMethod()

Description

use Request::is() instead of getMethod()

Checklist:

[x] Securely signed commits
[] Component(s) with PHPDoc blocks, only if necessary or adds value
[] Unit testing, with >80% coverage
[x] User guide updated
[x] Conforms to style guide

Request::is() checks the type of a request.
https://codeigniter.com/user_guide/incoming/incomingrequest.html#is
It is already overridden by CodeIgniter HTMX.
https://michalsn.github.io/codeigniter-htmx/incoming_request/#is

I wasn't suggesting we change it now. Just bummed I missed that discussion. No worries. :)

Thank you @kenjis


Is libsrt thread-safe?

Hello! I'm thinking of adopting this library for my projects, but I'm worried about thread safety. According to Paul Hsieh's String Library Comparisons table, libsrt has Thread Safety: No. Could you please explain what parts of the library are not thread-safe? Thanks!

@seirios Hi, Paul is right, libsrt is intentionally not thread safe: It is "thread safe" for concurrent read-only operations, e.g. initialization, fill the data, and use the data from N threads, but not for write or read+write concurrent operation. E.g. it is as "thread safe" as the equivalent C++ STL containers, which are also not thread safe for concurrent read+write or write+write.


get 404 response body as response?

First time using isomorphic-fetch, really like it but I have an issue,
I cant get the response body from a GET when it is 404.
I try to get /api/foo/:bar
And in the REST API I am calling I get a JSON 404 answer I would like to work with, but fetch just ignores that response on 404, the response is empty and I get error on the code on "return fetch", that is "Failed to load resource: the server responded with a status of 404 (Not Found)".
Anyone else had this issue?

I too have this issue.. I want to access the response body when the response code is 404.

you have to define a handler to detect the 404 and other error codes
https://github.com/github/fetch#handling-http-error-statuses


AttributeError: module 'typing' has no attribute 'TypingMeta'

for some reason my program throws this error rooted in this lib. when i try to simply overload the init of my class.
Code:
from overloading import overload
import cmath

class Quaternion:
    def __init__(self, r: int, i: int, j: int, k: int):
        self.r = r
        self.i = i
        self.j = j
        self.k = k

    @overload
    def __init__(self, c: complex):
        self.r = c.real
        self.i = c.imag

print(Quaternion(1, 2, 3, 4).r)
print(Quaternion(1 + 2j).r)

Error:

Traceback (most recent call last):
File "C:...\Python\Python37\lib\site-packages\overloading.py", line 63, in overload
return register(__registry[fname], func)
KeyError: 'main.Quaternion.init'

During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:...\Python\Testing\quaternion.py", line 6, in
class Quaternion:
File "C:...\Python\Testing\quaternion.py", line 14, in Quaternion
def init(self, c: complex):
File "C:...\Python\Python37\lib\site-packages\overloading.py", line 65, in overload
registry[fname] = overloaded(func)
File "C:...\Python\Python37\lib\site-packages\overloading.py", line 151, in overloaded
return register(dispatcher, func)
File "C:...\Python\Python37\lib\site-packages\overloading.py", line 199, in register
signature = get_signature(fn)
File "C:...\Python\Python37\lib\site-packages\overloading.py", line 441, in get_signature
types = tuple(normalize_type(type_hints.get(param, AnyType)) for param in parameters)
File "C:...\Python\Python37\lib\site-packages\overloading.py", line 441, in
types = tuple(normalize_type(type_hints.get(param, AnyType)) for param in parameters)
File "C:...\Python\Python37\lib\site-packages\overloading.py", line 468, in normalize_type
if not typing or not isinstance(type, typing.TypingMeta) or type is AnyType:
AttributeError: module 'typing' has no attribute 'TypingMeta'

Same here, python 3.7

The downgrade of the typing module helped me (from the python repository) to version <IP_ADDRESS>.
You can also forcefully ignore the typing module in the overloading module by assigning typing = None after the 30th line in the file overloading.py, but I think the typing module features will not be available.

such an unfortunately infomation ! we want use python3; this maybe an solution for overload: https://python3-cookbook.readthedocs.io/zh_CN/latest/c09/p20_implement_multiple_dispatch_with_function_annotations.html

The downgrade of the typing module helped me (from the python repository) to version <IP_ADDRESS>.
You can also forcefully ignore the typing module in the overloading module by assigning typing = None after the 30th line in the file overloading.py, but I think the typing module features will not be available.

Same issue here. Downgrading all the way to 3.5 sounds like a major hassle.

I have the same issue. @bintoro If you ask me, this project should be archived, since it's not in active development and does not work for the newest versions of python.

я не знаю как это влияет но можно использовать _GenericAlias вместо TypingMeta
будет работать


No module named 'win32con'

I am running the repo on RTX2060 with pytorch1.10 + cuda 10.2 environment and got this error
File "C:\Users\Ali\anaconda3\envs\detr\lib\site-packages\portalocker-2.4.0-py3.10.egg\portalocker\portalocker.py", line 10, in
import win32con
ModuleNotFoundError: No module named 'win32con'
ang suggestions

Our experiment environment is Ubunutu.

Hope this may help U.

It helps me thanks, but during installing dectron2, I got this error.
I using pytorch1.10 + cuda 10.2 version
C:\Users\Ali\crowdhuman-main\DETR\Iter-E2EDET-main\detectron2\layers\csrc\nms_rotated\nms_rotated_cuda.cu(68): error: identifier "single_box_iou_rotated" is undefined
detected during instantiation of "void nms_rotated_cuda_kernel(int, float, const T *, unsigned long long *) [with T=float]"
(105): here
C:\Users\Ali\crowdhuman-main\DETR\Iter-E2EDET-main\detectron2\layers\csrc\nms_rotated\nms_rotated_cuda.cu(68): error: type name is not allowed
detected during instantiation of "void nms_rotated_cuda_kernel(int, float, const T *, unsigned long long *) [with T=float]"
(105): here
C:\Users\Ali\crowdhuman-main\DETR\Iter-E2EDET-main\detectron2\layers\csrc\nms_rotated\nms_rotated_cuda.cu(68): warning: expression has no effect
detected during instantiation of "void nms_rotated_cuda_kernel(int, float, const T *, unsigned long long *) [with T=float]"
(105): here
C:\Users\Ali\crowdhuman-main\DETR\Iter-E2EDET-main\detectron2\layers\csrc\nms_rotated\nms_rotated_cuda.cu(58): warning: variable "cur_box" was set but never used
detected during instantiation of "void nms_rotated_cuda_kernel(int, float, const T *, unsigned long long *) [with T=float]"
(105): here
5 errors detected in the compilation of "C:/Users/Ali/crowdhuman-main/DETR/Iter-E2EDET-main/detectron2/layers/csrc/nms_rotated/nms_rotated_cuda.cu".
error: command 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\bin\nvcc.exe' failed with exit code 1
any advices


How to add dialogue?

I tried adding it in assets/data/dialogue/tutorial and mods/data/dialogue/tutorial and nothing worked. I also tried putting it in assets/data/charts/tutorial like Psych Engine but that failed as well.
Am i doing something wrong?
Unless it is a bug, this is NOT a bug report.

Please use the issues tab for bug reports and not for questions.

Whoops sorry @UmbratheUmbreon! Didn't see the "discussion" tab lol


Can't boot from VolumeSnapshot with "Rocky" version of OpenStack-Cinder

I've got a problem using this plugin with (bits of) OpenStack "Rocky".  Instances are appearing in OpenStack but being deleted immediately, over-working the OpenStack instance but not making slave nodes available to Jenkins.
Background:
We've got an OpenStack instance we call "hdc" that's mostly version "Pike" (11).  Last weekend, we upgraded some bits (Heat, Horizon, Glance, Cinder & Keystone) to version "Rocky" (13) ... and Jenkins then stopped being able to provision slaves.
In particular, we upgraded Cinder from 11.0.0 to 13.0.3, and we think this is what make it go wrong.

Our slave templates boot from a VolumeSnapshot.
The plugin (successfully) requests a new OpenStack instance - that bit works fine.
Unlike instances booted from an Image, those booted from a VolumeSnapshot run from a Volume, and once the plugin knows what that Volume is, the plugin sets the name & description of that Volume (so that humans can tell what Volumes are being used for which purpose, especially useful when OpenStack forgets to delete them) using Openstack.setVolumeNameAndDescription.

However, since we messed with our OpenStack instance, the setVolumeNameAndDescription call has been failing with the following exception:
Unexpected exception encountered while provisioning agent hdcjenkinsslaveprodtest-win2016-hostedslave
jenkins.plugins.openstack.compute.internal.Openstack$ActionFailed: ActionResponse{success=false, fault=Invalid input for field/attribute volume. Value: {u'description': u'For hdcjenkinsslaveprodtest-win2016-hostedslave-161881 (2b556463-8fef-4616-981b-784c54ee3b4b), from VolumeSnapshot win2016_en.us_iim1.8.x_libsupp9.0.x_db2.11.1.x_ff46.x.candidate_jso (2ca66441-a4ee-4312-8ad0-755530e7b370).', u'display_name': u'hdcjenkinsslaveprodtest-win2016-hostedslave-161881[0]', u'name': u'hdcjenkinsslaveprodtest-win2016-hostedslave-161881[0]', u'os-vol-mig-status-attr:migstat': u'none', u'display_description': u'For hdcjenkinsslaveprodtest-win2016-hostedslave-161881 (2b556463-8fef-4616-981b-784c54ee3b4b), from VolumeSnapshot win2016_en.us_iim1.8.x_libsupp9.0.x_db2.11.1.x_ff46.x.candidate_jso (2ca66441-a4ee-4312-8ad0-755530e7b370).'}. Additional properties are not allowed (u'os-vol-mig-status-attr:migstat' was unexpected), code=400}
    at jenkins.plugins.openstack.compute.internal.Openstack.throwIfFailed(Openstack.java:690)
    at jenkins.plugins.openstack.compute.internal.Openstack.setVolumeNameAndDescription(Openstack.java:435)
    at jenkins.plugins.openstack.compute.slaveopts.BootSource$VolumeSnapshot.afterProvisioning(BootSource.java:433)
    at jenkins.plugins.openstack.compute.JCloudsSlaveTemplate.provisionServer(JCloudsSlaveTemplate.java:338)
    at jenkins.plugins.openstack.compute.JCloudsSlaveTemplate.provisionSlave(JCloudsSlaveTemplate.java:211)
    at jenkins.plugins.openstack.compute.JCloudsCloud$NodeCallable.call(JCloudsCloud.java:332)
    at jenkins.plugins.openstack.compute.JCloudsCloud$NodeCallable.call(JCloudsCloud.java:319)
    at jenkins.util.ContextResettingExecutorService$2.call(ContextResettingExecutorService.java:46)
    at jenkins.security.ImpersonatingExecutorService$2.call(ImpersonatingExecutorService.java:71)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)

FYI hdcjenkinsslaveprodtest-win2016-hostedslave is the name of our template and win2016_en.us_iim1.8.x_libsupp9.0.x_db2.11.1.x_ff46.x.candidate_jso is the name of our VolumeSnapshot.
Looking at that error in more detail, it's implying that OpenStack thinks our request was to set:

description = For hdcjenkinsslaveprod-linux-genericslave-13577 (b93379ef-8630-4c65-9fe0-93398acdab5e), from VolumeSnapshot jenkins_slave_ccs (92a49a1f-37d2-4401-ab1a-6fd0cbdd306c).
display_name = hdcjenkinsslaveprod-linux-genericslave-13577[0]
name = hdcjenkinsslaveprod-linux-genericslave-13577[0]
os-vol-mig-status-attr:migstat = none
display_description = For hdcjenkinsslaveprod-linux-genericslave-13577 (b93379ef-8630-4c65-9fe0-93398acdab5e), from VolumeSnapshot jenkins_slave_ccs (92a49a1f-37d2-4401-ab1a-6fd0cbdd306c).

OpenStack is complaining that os-vol-mig-status-attr:migstat is an "Additional" property, implying that we probably shouldn't be setting that ... except this plugin code isn't setting it - that part of the request seems to be being erroneously added in by the openstack4j code.
i.e. The bug seems to lie outside of this plugin code ... but it is causing this plugin to fail.
We need a fix and/or workaround - we can't keep our OpenStack instance(s) on ancient versions of the OpenStack software forever.
I think that a good workaround would be to make the plugin tolerate (but log) this exception and then continue on; that'd mean that the issue is no longer a fatal error for us.
A more permanent fix would be to fix the openstack4j code so it doesn't try setting things that it wasn't asked to change ... but it looks like that's a general issue running through that code (e.g. openstack4j #932, #869, #823, #820, #682, #606, #573, #470) and so it may be non-trivial to fix this elegantly.
Note: This happened using both plugin version 2.49 (the version I was using when I first hit this issue) and version 2.50 (the version I switched to in case it fixed it) so it doesn't appear to be affected by the recent change to openstack4j version being used.

I believe that the "permanent fix" is to fix openstack4j/openstack4j#9, for which I've submitted a PR.
In the meantime, I've found that #278 mitigates the severity of this issue (it's allowing my Jenkins servers to spin up slave VMs on our "Rocky" OpenStack, albeit logging warnings about the failures).
@olivergondza As you appear to (now) be the maintainer of openstack4j as well as this plugin, I'd suggest you review both together ;-)


Revert "(MODULES-2777) Build all DSC Types"

Reverts puppetlabs/puppetlabs-dsc#136 as this has broken CI.
Upon further inspection, it includes work that should have been part of
puppetlabs/puppetlabs-dsc#89
Will resubmit a PR for type generation changes based on what's already in repo.
Will resubmit a PR for the differences with latest types separately as 2777

Reverted manually via cmdline, so closing this.


Tendermint occasionally reports 500, tx not found, when tx exists

Reported by Zpoken in the context of the web extension. Here are some images that show the problem:

The Zpoken team will implement retry logic on these requests, since a subsequent GET typically yields a 200. Let's dial up our logging in Tendermint to see if we can get more info about the variability here.

Why is the extension making this request to the Tendermint (JSON)RPC directly? Shouldn't it be using the configured Penumbra GRPC endpoint and the GRPC proxy methods? cc @zpoken

We see a similar error on the cosmos relayer:
2023-08-15T20:19:45.785167Z     debug   Broadcasting penumbra tx        {"provider_type": "penumbra"}                 2023-08-15T20:19:45.786734Z     debug   Waiting for penumbra tx to commit       {"provider_type": "penumbra", "syncRes": "&{Code:0 Data: Log: Codespace: Hash:D9F67732400CD443A1E8FC1710987A13D4AC8DDEF22692B1926CEF87317D982E}"}           2023-08-15T20:19:45.787045Z     info    Error building or broadcasting transaction      {"provider_type": "penumbra", "chain_id": "penumbra-devnet-local-a45a7190", "attempt": 1, "max_attempts": 5, "error": "error in json rpc client, with http response metadata: (Status: 200 OK, Protocol HTTP/1.1). RPC error -32603 - Internal error: tx (D9F67732400CD443
A1E8FC1710987A13D4AC8DDEF22692B1926CEF87317D982E) not found"}

No action is required: the relayer automatically retries, and finds the tx. But there's a delay before it's viewable via TM RPC.

We haven't seen this recently; closing


Nothing comes up and screen is flickering

Describe the bug
After installing and running as per the instruction, I was able to connect to http://<RPi2_IP>:3000, but I don't see any of my torrents. Instead, the list comes up empty (Filter = ALL) and is flickering every 1-2 seconds or so.
Expected behavior
I'm expecting to see my torrents and on the very top the appropriate info for my deluge deamon.
Device (please complete the following information):

Devices Tested: iOS 17.0.3 and Windows 11
Browser: Safari & Firefox (iOS), Firefox (Windows 11)
Deluge version: 2.0.5

Can you provide me docker logs along with console log

Thanks for replying @maulik9898 !
Can you please point me to the right direction for the docker logs?
Also, when you say console logs you mean NOT running it detached and see what messages are displayed?

Docker logs : https://docs.docker.com/engine/reference/commandline/logs/
Console logs means logs printed in the browser console.

@maulik9898 attached.
docker_logs.txt
console-export-2023-10-6_21-22-23.txt
This time I used Windows 11 and Firefox 118.0.1

Can you give me the command that u used to run a docker container. And how did you generate NEXTAUTH_SECRET .?

docker run \
  -p 3000:3000 \
  -e NEXTAUTH_SECRET=9eOro53um6a1OVoTwBvH6FUmTbNRu5byqybu0Oi36wA= \
  -e DELUGE_URL=http://localhost:8112 \
  -e DELUGE_PASSWORD=username \
  -e BARRAGE_PASSWORD=password \
  maulik9898/barrage

I generated NEXTAUTH_SECRET using:
openssl rand -base64 32

Can you use this command  to generate NEXTAUTH_SECRET .
  jose newkey -s 512 -t oct -a HS512

-bash: jose: command not found

@maulik9898 I think I know where I messed up and am getting the 'decryption operation failed'.
When I first installed Barrage I did it exactly as the installation instructions and used NEXTAUTH_SECRET=secret
When I start again with NEXTAUTH_SECRET=secret  I don't get the decryption operation failed'. Here's what I see:
osmc@VLSiOSMC:~$ docker logs 006fd7a87a2b
Listening on port 3000 url: http://localhost:3000
[next-auth][warn][NEXTAUTH_URL]
https://next-auth.js.org/warnings#nextauth_url
osmc@VLSiOSMC:~$

However, the issue with the blank screen and the flickering persists. Also,
console-export-2023-10-6_22-1-36.txt
I'm attaching a fresh set of browser logs.

U need to clear browser cache

U need to clear browser cache

Super! Now I'm using a more appropriate NEXTAUTH_SECRET ;) Behavior is the same as my previous message.

If you are still facing an issue then remove the docker container using docker rm containername  . And try opening the link in incognito


Updating documentation for standalone build issue

Signed-off-by: pankajgoyal2<EMAIL_ADDRESS>

From testing I found this change also needs to be made in BUILD.md .
I think long term we need to either:

remove the duplicate pip3 install instruction in PREREQUISITES.md
or
stop using the Python virtual environment.


Run mypy during pre-commit to verify typing information

This is a proof of concept and request for comments: When libraries are fully typed, we can and should make sure that stays true by running mypy in pre-commit.
The script automatically detects the packages and/or modules to run on.
A package may opt into non-strict mypy mode with a stanza in pyproject.toml:
[tool.adafruit]
    mypy-strict = false

I tested it also on Adafruit_CircuitPython_LED_Animation and that package is just a few changes away from passing mypy in non-strict mode.
This is based on the ideas from https://jaredkhan.com/blog/mypy-pre-commit

Hi @jepler - is this something you're still looking at?
If it might be on the back-burner for a while longer, would you find it useful - maybe as an incremental step - to add some simpler changes to the pre-commit file to run mypy with --strict checks on this repository for now? (And replace later with the more 'automatic' approach you have in mind.)
Maybe a small update like this? https://github.com/adafruit/Adafruit_CircuitPython_PIOASM/commit/d067d01464e218458c7ea4bef8582c547b41d51f  (run logs here).

I haven't touched this in quite some time, and I'm not likely to do so anytime soon.

I'm not sure what path will get us to running mypy across libraries. making bespoke changes to the pre-commit file in each repo is undesirable, as it makes it harder to bulk update pre-commit across libraries with an adabot patch .. both my approach and yours do this. But mostly I just haven't had the time to devote to trying to figure out how to do it.

:ok_hand: - thank you for your feedback around this!


Function groups with namespaces - not implemented #824

Function groups with namespaces - not implemented #824

thanks, looks good, does the function group activation work after applying this fix?

Yes everything works and activates fine (tested on SAP S/4 1610 release)

cool, merging, welcome as a abapGit contributor 😄

Thanks! Hope to be able to contribute in the future as well!
Great project by the way! 😄


FPGA: add instructions to generate the sf1 dataset in the db design

Existing Sample Changes
Description
The db design was missing instructions on how to generate the dataset with a scale factor of 1.
This PR improves the README to provide more detailed instructions.

This PR addresses https://github.com/oneapi-src/oneAPI-samples/issues/891


error running test

hi,
I installed mhcflurry by following the instructions in the README.md:
pip install mhcflurry
mhcflurry-downloads fetch
when running
nosetests .
I got following error:

...
Ran 47 tests in 254.464s
FAILED (errors=14)
Exception AttributeError: "'NoneType' object has no attribute 'TF_DeleteStatus'" in <bound method
Session.del of <tensorflow.python.client.session.Session object at 0x7f7366b1db90>> ignored

The similar error when running prediction command:
mhcflurry-predict --alleles HLA-A0201 HLA-A0301 --peptides SIINFEKL SIINFEKD SIINFEKQ
Using TensorFlow backend.
Predicting for 2 alleles and 3 peptides = 6 predictions
/home/ghost/anaconda2/lib/python2.7/site-packages/tensorflow/python/ops/gradients_impl.py:91: UserWarning: Converting sparse IndexedSlices to a dense Tensor of unknown shape. This may consume a large amount of memory.
"Converting sparse IndexedSlices to a dense Tensor of unknown shape. "
allele,peptide,mhcflurry_prediction
HLA-A0201,SIINFEKL,10672.3476562
HLA-A0201,SIINFEKD,26042.7167969
HLA-A0201,SIINFEKQ,26375.7949219
HLA-A0301,SIINFEKL,25532.703125
HLA-A0301,SIINFEKD,24997.8769531
HLA-A0301,SIINFEKQ,28262.828125
Exception AttributeError: "'NoneType' object has no attribute 'TF_DeleteStatus'" in <bound method Session.del of <tensorflow.python.client.session.Session object at 0x7f2ad9c57090>> ignored
I googled around, but did not find any obvious solution.  Any help will be very much appreciated.

Thanks for the bug report @bosmont , and apologies for the late response. I just merged a PR that pins the keras version to a version we support (1.1.0). Can you try this now, after reinstalling MHCflurry and also setting KERAS_BACKEND=theano?

In the latest release (just pushed) we also now support tensorflow. Closing for now.


Allow config of id extraction for custom gRPC service methods

Applies to custom runtimes which use gRPC service interfaces other than the standard KFSv2 one. Currently the mm-vmodel-id header must still be used for these.
Add a section in the config yaml which contains a map of fully qualified gRPC service method names to a map/object containing a field called idExtractionPath whose value is a list of ints (in future other per-method fields might be supported).
The controller will use this to augment the model-mesh config secret that it already maintains for providing the id extraction paths.

Just adding a bit more context:
The current configuration that specifies the idExtractionPath for rpcConfigs is JSON content hard-coded into cluster_config.go. The implementation for this issue would allow that list to be extended with more entries baed on configuration for the controller.


[CELEBORN-763] Add --add-opens to bootstrap shell scripts

What changes were proposed in this pull request?
Add --add-opens to bootstrap shell scripts
Why are the changes needed?
Additional --add-opens is required for Java 17, notes, the --add-opens list is copied from Spark and was used for UT, I not sure each of them are required but at least the UT passed with them.
Does this PR introduce any user-facing change?
Yes, for Java 17 support.
How was this patch tested?

Since Spark 3.3, the --add-opens list is added no matter JDK version you are using.
e.g. Spark 3.3.1 with Java 8

FYI:
JEP 403 targeted for JDK 17 will remove --illegal-access flag. That will be equivalent to --illegal-access=deny.
this means using reflection to invoke protected methods of exported java.* APIs will no longer work. For example:
> /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home/bin/jshell
|  欢迎使用 JShell -- 版本 17.0.7
|  要大致了解该版本, 请键入: /help intro

jshell> java.nio.ByteBuffer direct = java.nio.ByteBuffer.allocateDirect(1);
direct ==> java.nio.DirectByteBuffer[pos=0 lim=1 cap=1]

jshell> direct.getClass().getDeclaredConstructor(long.class, int.class).setAccessible(true);
|  异常错误 java.lang.reflect.InaccessibleObjectException：Unable to make private java.nio.DirectByteBuffer(long,int) accessible: module java.base does not "opens java.nio" to unnamed module @34c45dca
|        at AccessibleObject.checkCanSetAccessible (AccessibleObject.java:354)
|        at AccessibleObject.checkCanSetAccessible (AccessibleObject.java:297)
|        at Constructor.checkCanSetAccessible (Constructor.java:188)
|        at Constructor.setAccessible (Constructor.java:181)
|        at (#2:1)

jshell>

>  /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home/bin/jshell -R --add-opens=java.base/java.nio=ALL-UNNAMED
|  欢迎使用 JShell -- 版本 17.0.7
|  要大致了解该版本, 请键入: /help intro

jshell> java.nio.ByteBuffer direct = java.nio.ByteBuffer.allocateDirect(1);
direct ==> java.nio.DirectByteBuffer[pos=0 lim=1 cap=1]

jshell> direct.getClass().getDeclaredConstructor(long.class, int.class).setAccessible(true);

jshell>

Since Spark 3.3, the --add-opens list is added no matter JDK version you are using.
e.g. Spark 3.3.1 with Java 8

this is because we have the flag -XX:+IgnoreUnrecognizedVMOptions for the JDK 8
> java -version
openjdk version "1.8.0_362"
OpenJDK Runtime Environment (Temurin)(build 1.8.0_362-b09)
OpenJDK 64-Bit Server VM (Temurin)(build 25.362-b09, mixed mode)
> java --add-opens=java.base/java.nio=ALL-UNNAMED -version
Unrecognized option: --add-opens=java.base/java.nio=ALL-UNNAMED
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
> java -XX:+IgnoreUnrecognizedVMOptions --add-opens=java.base/java.nio=ALL-UNNAMED -version
openjdk version "1.8.0_362"
OpenJDK Runtime Environment (Temurin)(build 1.8.0_362-b09)
OpenJDK 64-Bit Server VM (Temurin)(build 25.362-b09, mixed mode)

@cfmcgrady thanks for supplying additional information

Thanks, merged to main/0.3


Update "renamed" signal to include previous node name + Update animation track NodePaths upon Node rename

Changes

The rename signal will now pass the previous name of the Node for convenience.
AnimationPlayer will listen for Node renames and update affected animation track NodePaths.

I believe this should work with the 3.x branch as it's a light change. Not 100% though.

For consistency with other classes, shouldn't the new name be passed together?

For consistency with other classes, shouldn't the new name be passed together?

For consistency reasons, sure. I elected not to add it because the new name is already on the node by the time the signal is emitted.


fix(docs):vscode settings file name

Visual Studio Code workspace settings file name should be settings.json instead of setting.json.
https://code.visualstudio.com/docs/getstarted/settings

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Thanks! Please sign the CLA so we can land the PR

Signed!


(post-v1?) Add chumsky to rust serialization benchmark page

Around a corner of the internet I landed on:
Repo: https://github.com/djkoloski/rust_serialization_benchmark
Website: https://david.kolo.ski/rust_serialization_benchmark/
And I was surprised to not see chumsky yet, and I think it should definitely be there somewhere!

Interesting! I definitely think there would be value in this.


Offline automatization [offline-plugin]

Remove AppCacheWebpackPlugin
Remove hand-written ServiceWorker
Add OfflinePlugin and use it to generate both ServiceWorker and AppCache

I hope it's okay to remove AppCacheWebpackPlugin since it's not needed anymore here.
offline-plugin had couple of issues so I released ver. 2.0.0 to fix them and make it work fine with HtmlWebpackPlugin and other things required for react-boilerplate.
I tested it with your prod builds and also tested it on WebpackDevServer (with lazy: false) and all seems to work. Let me know if you see any issues here.
Closes #107
Thanks!

Fixed build. Sorry, copied everything to the end right before commit and forgot to test.

Hmm.. it looks that you are testing on Node 0.10 and it doesn't have promises. Do you really need to support it, is there many people on it?
I can add polyfill, no problem. Just didn't saw much reason for it yet.

Thank you so much, this looks great!
See this comment as to why I currently test against 0.10. If you can disprove that enough people are still using it, I'd be very happy to drop support!

@mxstbr seems that a lot of people are still using it for old projects https://semaphoreci.com/blog/2015/12/15/nodejs-version-usage-in-commercial-projects-2015-edition.html
But as far as I understand, boilerplate is needed only for new projects :-) Anyway, let me add support of promises of 0.10 and then I will commit a fix.

Okay, fine now.

Thanks so much @NekR, much appreciated!

Sure, you are welcome!


Make transparent regions ignore pointer events

[x] I agree to follow the Code of Conduct that this project adheres to.
[x] I have searched the issue tracker for a feature request that matches the one I want to file, without success.

Is your feature request related to a problem? Please describe.
Using shapes (like rectangles) as containers to group other elements visually is a common approach.
However the usage shapes in this way has some usability problems most of which boil down to transparent regions still being considered a hit region. It is for example imposible to draw a selection around elements inside of such a container. Instead of creating a selection the background element grabs focus and you start moving it.
Describe the solution you'd like
Most alternative programs like Inkscape, CorelDraw, Microsoft Office etc do not consider transparent regions as clickable but instead treat them as click-though. The elements are still clickable at their edges (similar to arrows currently). I think this would also be the prefered solution as it feels natural and is widespread in most other applications.
Describe alternatives you've considered
I was unable to think of any alternative approach nor do I know of any application which handles this different from the aforementioned ones.
Additional context
Steps to reproduce the behavior:

Open diagrams.net
Insert a shape (e.g. rectangle)
Got to the style tab on the right
Disable fill
Click inside of the element (i.e. the transparent region)

Try using pointerEvents=0 in the cell style.

That seems to be what I imagined - I assume it corresponds to pointer-events: visiblePainted;? Is there some place where such advanced options (which do not appear to be exposed in the UI) are documented?
What is your attitude towards making this the default? This feels a lot better from a UX standpoint. This came up during a meeting yesterday where people shared this opinion which is why I am asking.

Documented, only in the code.
Can't make it the default, we have a lot of users. Changing such basic stuff like that isn't an option.
You could set it globally in the default cell style in the JSON configuration. How are you consuming the project, online, confluence, other?

Are they grouped in one place where one can look them up by any chance or rather scattered around?
Hm okay :/ I still think that this is more natural and what users are actually used to from basically all other programs but I understand the aspect of backwards compatibility.
Using the electron app and sometimes the vs code extension. BTW thanks very much for the option to save the file uncompressed - it is very appreciated for git :D

Can't make it the default, we have a lot of users. Changing such basic stuff like that isn't an option.

I kindly disagree. This does not disable any functionality but only changes the way the user interacts with stuff. Also I would not call it basic as this only applies to shapes with a transparent fill.
While you definitely have lots of users this is not a reason not to make such a change. As I explained before this is not ideal from a user experience standpoint as it subverts a users expectation (why is this shape suddenly selected? I only clicked at an empty point in space). Additionally it prevents other basic functionality from working as expected like spanning a selection box. You can see that many similar drawing programs¹ therefore only responds to clicks on painted areas (with a bit of padding obviously).
I very much want to see this tool become better and more natural to use. Making it more intuitive is one step to achieving this goal. Furthermore this would help users switching from comparable programs.
¹ Lucidchart is the only one I know which does this like draw.io - MS Powerpoint, Libreoffice Draw, Corel Draw, Gimp do not and at least MS and Corel have multiple UX designers sitting behind those products.

And Lucidchart is a diagramming tool, like us. The rest are not....

Yes but that does not mean that they have put more thought into their UX than the other programs I listed. Also many new users will come predominantly from those non-diagramming tools. Additionally the use case for most of programs also incorporates making graphics to a large degree so their expertise should not be ignored just because they are not a pure diagramming tool


Fix single article view

Diverting a bit from the bug report template because the app is not deployed yet, will be very difficult to reproduce
Currently on the single article view reload will take you back to the home screen. This is to get around an issue for getting individual articles from nostr relay.
What needs to be done? We are anyway getting the list of events from the relay, just pick the public id of event from the url slug and search for it in the event list and display it accordingly. We need to create a subsciption for event-children to get the messages in an individual article but commenting on the article is not the target for this initial release

As discussed with @PulkitVyasCynsar one potential problem with this approach is that there is no way we can get when the event list is completely full in other words how can we know that the nost-relay is done with getting all the events so that we can search for a particular event in the event list.
In my opinion we need to experiment a bit for this one, branle client has the same functionality so probably we can steal some of it from there.

Closing for irrelevance. Branle architecture fixes thsi


[PE-D][Tester B] Functionality bug: Lack of warnings for invalid dates

When an invalid date is inputted in the correct date format, there are no warnings shown to the users. Instead, YellowBook simply parses it to the nearest valid date, which is often the last day of that particular month.
For example, running the command

addT d/buy snacks D/31-11-9999 (Note that 31 is a valid number of days a month can have but November does not have 31 days)
A task due on 30-11-9999 is added instead

I feel that showing the user a warning is more suitable in this case because as fast typists, typos are bound to occur and it might be a big issue if the month input was a typo such that the task due on 31-05-2022 was inputted to be due on 31-06-2022 and YellowBook simply assumes the task to be due on 30-06-2022. Then YellowBook might not be as reliable anymore as a task tracker.

Labels: severity.Low type.FunctionalityBug
original: Jiacheng-y/ped#5

https://stackoverflow.com/questions/51335704/java-util-auto-correcting-invalid-date


Using webpack-obfuscator doesn't work

Version
3.0.0-beta.15
Reproduction link
https://github.com/alijaya/vue-obfuscator-bug
Steps to reproduce

vue create test-project
cd test-project
yarn add webpack-obfuscator
add vue.config.js:

var JavaScriptObfuscator = require('webpack-obfuscator')

module.exports = {
  configureWebpack: {
    plugins: [
      new JavaScriptObfuscator()
    ]
  }
}

yarn serve

What is expected?
The webpage works without error and the source code is obfuscated.
What is actually happening?
It shows error.
Hypotheses: it's because the obfuscator use escape character like '\x20' as space ' ', but vue treat it as literal '\x20'

Its not working

The error states:

Error: Cannot read property 'ecmaFeatures' of undefined

... so this seems to be a bug in the plugin itself. If you change the Plugin constructor call to this:
new JavaScriptObfuscator({}) // providing an empty object to prevent "of undefined" error

it works.
See discussion here: javascript-obfuscator/webpack-obfuscator#36

I´ve tried this... and is not working
#vue.config.js
plugins: [
new JavaScriptObfuscator({})
]
But the chrome displays error output

And the home page of the app simply disappears... meaning, that the app simply brokens

For anyone seeing this: try setting the parameter "seed" to 0


Editing of added macros

Can custom added macros be edited/removed somewhere in the IDE?
The reason si when I add custom macro but select its type (paired/unpaired) wrong, I'm stuck with it "forever".

There is no configuration dialog, but you can remove it from .idea/workspace.xml in your project

Can't find my custom macro in .idea/workspace.xml in my project folder. Are these stored elsewhere? I thought custom macros are not project based.

Search for latte.pair or latte.unpaired in .idea/workspace.xml file.

In 1.0.0 was added UI for settings with more than set custom macros in Preferences -> Languages & Frameworks -> PHP -> Latte.
Settings for latte is now in .idea/latte.xml file.


Minimum column

The inline blame can be distracting because it appears all over the place. It would be useful to have the a setting for a "minimum column" at which the inline blame would appear e. g. 80. If this description isn't clear. Zed has this feature and this is how it looks like:
https://github.com/user-attachments/assets/dca93a9f-7815-4675-8a26-99ffe641d30a

Hey Leleat! Thanks for the feature request.
Sadly, as far as I can tell, this is not supported by vscode.
The extension uses setDecorations to set the inline message. It can only set a margin and calculating that dynamically based on line content and display font sounds like a lot of work and something prone to break.
Perhaps this will change in the future but until then I will not implement it.