If ghttp.Server.Group is used, ghttp.Server.GetRoutes() is invalid

1. What version of Go and system type/arch are you using?
go1.20.3 windows/amd64
2. What version of GoFrame are you using?
github.com/gogf/gf/v2 v2.3.3
3. Can this issue be re-produced with the latest release?
yes
4. What did you do?
func test() {
	s := g.Server()
	usr := s.Group("/usr")
	usr.POST("/login", func(r *ghttp.Request) {
		r.Response.Write("login")
	})
	usr.POST("/logout", func(r *ghttp.Request) {
		r.Response.Write("logout")
	})

	//I want to print all route,but just print "/*"
	rts := s.GetRoutes()
	for _, v := range rts {
		fmt.Println(v.Route)
	}
	s.SetPort(8080)
	s.Run()
}

5. What did you expect to see?
/usr/login
/usr/logout

6. What did you see instead?
/*

@hansonyu183 The routes will be auto registered when started.
package main

import (
	"fmt"

	_ "github.com/gogf/gf/contrib/drivers/mysql/v2"
	"github.com/gogf/gf/v2/frame/g"
	"github.com/gogf/gf/v2/net/ghttp"
)

func main() {
	s := g.Server()
	usr := s.Group("/usr")
	usr.POST("/login", func(r *ghttp.Request) {
		r.Response.Write("login")
	})
	usr.POST("/logout", func(r *ghttp.Request) {
		r.Response.Write("logout")
	})
	s.SetPort(8080)
	s.Start()

	//I want to print all route,but just print "/*"
	rts := s.GetRoutes()
	for _, v := range rts {
		fmt.Println(v.Route)
	}

	g.Wait()
}


subclass: Implement subclassing for GtkStack

Like EventBox this is an empty trait and override_vfuncs.

@GuillaumeGomez :+1:

Looks good but please rebase first. :)

@BrainBlasted can you rebase so we can merge?

Sorry it took me so long. Rebased.

This no longer works because the "subclassing" feature seems to be removed? What happened here?

Nevermind, figured it out.

:+1:

Thanks!


Update 11_service_stacks.md

Proposed changes

Unreleased project version (optional)

Related issues (optional)

Thanks, @scjane :)


EVMC compatibility

EVMC has the goal to be the binary ABI between VMs and clients. It is already supported by Aleth and geth as clients and aleth-interpreter and Hera as VMs.
Making SputnikVM compatible with EVMC would enable its use with the above mentioned clients.
It seems that the C FFI is fairly similar to EVMC, but not exactly the same. Have you considered making it compatible with EVMC?
Note: EVMC also has a Go binding.
cc @chfast

We're aware of EVMC, but we don't have plans to work on compatibility with EVMC at this moment. We may reconsider it later, when we'll have time for it.
Or, if someone else needs to have EVMC support right now, we'll appreciate a PR with such functionality

We're aware of EVMC, but we don't have plans to work on compatibility with EVMC at this moment.

Would you be able to explain some reasons behind this decision? Just curious.
It appears that some of the work is duplicated and joint efforts could help both projects.

We just don't have resources for that at this moment


On event example code given in the docs throws error in typescript

🐛 Bug description
Example given in the docs throws error due to mismatched types
🔍 Bug reproduction
Steps to reproduce the behavior:

Go to https://www.algolia.com/doc/api-reference/widgets/insights/js/#widget-param-onevent
Copy and run the example code like this:

createInsightsMiddleware({
  insightsClient: window.aa,
  onEvent: (event, aa) => {
    const { insightsMethod, payload } = event;

    // Send the event to Algolia
    aa(insightsMethod, payload);
  }
});

You will see the error Argument of type 'InsightsClientMethod | undefined' is not assignable to parameter of type 'InsightsClientMethod'.

💭 Expected behavior
Code compiles with no error

Environment

OS: MacOs 12.2.1
Browser: Chrome 106

I've made a pull request to the documentation with that conditional added, this issue will automatically close once that PR is merged


Avoid sanity checks for AnsiblePlaybook unit tests

This avoids the need to have the Docker daemon running when running unit tests which should not be necessary and introduces another way for the unit tests to fail.
I've tested this manually like so:
$ sudo systemctl stop docker
$  tox -e py37-ansible28-unit -- -n auto -p no:warning

This is necessary for these tests because they call _instance.execute directly which is a wrapper function which includes the call to the sanity checks before calling the mocked runner command.

Also note, this cannot be reproduced on the CI because we always have the docker service up and running. See https://travis-ci.com/ansible/molecule/jobs/203111044#L238.


Uri.encodeUrl() doesn't fully encode url

Dart core library: Uri
Uri.encodeFull() doesn't seem to be properly encoding urls.
  var url = Uri.encodeFull('https://www.test.com?test=one/two&anotherParam=123');
  print('encoded: '  + url);

Output:
encoded: https://www.test.com?test=one/two&anotherParam=123

For reference, see issue reported on Flutter project: https://github.com/flutter/flutter/issues/31530
Using dart through flutter on MacOS.
flutter --version
Flutter 1.7.8+hotfix.4 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 20e59316b8 (2 weeks ago) • 2019-07-18 20:04:33 -0700
Engine • revision fee001c93f
Tools • Dart 2.4.0

And another test:
var url = Uri.encodeFull('https://www.test.com?test=one/two&anotherParam=12://3');
print('encoded: '  + url);

Output:
encoded: https://www.test.com?test=one/two&anotherParam=12://3

cc @lrhn

You can use Uri.encodeComponent  @bmcilw1

Uri.encode is working correctly. The resulting URL is a valid URL, which is all the function promises:

Encode the string uri using percent-encoding to make it safe for literal use as a full URI.

The documentation specifically states that it doesn't encode letters, digits or the characters !#$&'()*+,-./:;=?@_~.
As mentioned above, you might want to use Uri.encodeComponent which also encodes URI separators, depending on what result you actually want.

[✓] Flutter (Channel stable, 1.20.2, on Mac OS X 10.15.6 19G2021, locale zh-Hans-CN)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
[✓] Xcode - develop for iOS and macOS (Xcode 11.6)
[✓] Android Studio (version 4.0)
[!] IntelliJ IDEA Ultimate Edition (version 2019.1.3)
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
[✓] VS Code (version 1.48.0)
[✓] Connected device (1 available)

! Doctor found issues in 1 category.

There is no function Uri.encode,  Uri.encodeFull not work for me, Uri.encodeComponent  is working,  It encoded whole url。
@lrhn

Right, it was Uri.encodeFull which was working correctly. Updated original.


cpplint: Add more build/include checks

Add patterns for <any>, <array>, <optional>, and <variant>.
See https://github.com/RobotLocomotion/drake/pull/12705 for consequences.

This change is

+@sammy-tri for feature review, please.
+@SeanCurtis-TRI for platform review, please.
We'll wait to merge this until Drake is ready for it.


Safari 12 Restarting when using multiple LineTo calls before endFill

Expected Behavior
Current Behavior
Safari 12.0.2 will restart with a message "This website has reloaded because of a problem", and then after restarting several times will show a page displaying "A problem has repeatedly occurred with (name of website)"
Possible Solution
To fix this problem in the short-term, I've had success with following each call to lineTo with moveTo at the same coordinates. (In my case I'm only drawing lines, and have no need for an actual fill.)
Steps to Reproduce
Using Safari 12.0.2, draw lines with a PIXI.Graphics using code similar to the following:
_ctx.clear();
_ctx.beginFill("#ffffff", 1);
_ctx.lineStyle(2, "#ffffff");
_ctx.moveTo(0, 0);
_ctx.lineTo(0,100);
_ctx.lineTo(100,100);
_ctx.lineTo(100, 0);
_ctx.lineTo(0, 0);
_ctx.endFill();
Call this and render it every frame.
Sometime within 5 seconds to 1 minute Safari 12.0.2 will restart with the error mentioned above.
Environment

pixi.js version: 4.3.0
Browser & Version:Safari 12.0.2
OS & Version: MacOS 10.13.6

Create an example of this:
https://pixiplayground.com/#/edit/s899WR_0XaP~awZ5CQfly
Does this reproduce for you, @msucharski? I cannot get this to reproduce on v4.8.4 (with the same Browser & OS versions).


Add a second, not a millisecond

Unix time works in seconds!

Nevermind. Moments support milliseconds, even if that data is removed in the timestamp.


new H 19 menus

Hello
Might you please make it possible for H 19 additinal nodes?
and please for LOPS context as well.
that would be great as always.
thank you very much again.

which "additional nodes"? or do you mean Lops in general


Skip markdown if we can

This adds a small regexp to quickly opt out of markdown parsing. I think this caught all the cases, double check that please.
w/ production js builds this makes my inbox inital load go from ~220ms to 150
@keybase/react-hackers

The commits 58885275d742...e73970f386e7 introduce visual changes on linux. :mag_right: 1 changed

Changed: Markdown-Blank_lines (before) (after)

The commits ec10bca84046...9ef5a0981155 introduce visual changes on linux. :mag_right: 1 changed

Changed: Markdown-Blank_lines (before) (after)

The commits ec10bca84046...9ca451775e88 introduce visual changes on linux. :mag_right: 1 changed

Changed: Markdown-Blank_lines (before) (after)

@chrisnojima added tests, tweaked regex a bit

Lgtm let's do it

The commits ec10bca84046...b25eaa33da47 introduce visual changes on linux. :mag_right: 1 changed

Changed: Markdown-Blank_lines (before) (after)

@chrisnojima Had to make some more fixes (including a consequential merge), please review.

👍

The commits 36be2de242a7...3a92f1eeea0a introduce visual changes on linux. :mag_right: 1 changed

Changed: Markdown-Blank_lines (before) (after)


Update package.json main

Update main to point to the main Dropkick js source. This way,
Dropkick is require-able with require('dropkickjs') rather than
require('dropkickjs/lib/dropkick').

Good thing I haven't pushed to NPM yet. :P

Phew! Thanks for the quick merges. :beers:

No problem!


Cassandra :: 'update-sql' command doesn't create Liquibase tracking tables

Search first

[X] I searched and no similar issues were found

Description
The user is configuring Liquibase with a brand-new, clean Cassandra database. They are attempting to run their pipeline, starting with “liquibase status” followed by “liquibase update-sql” before running any scripts. However, Liquibase is failing due to missing tracking tables. Liquibase should automatically create these tables when they don’t exist, which it’s trying to do, but clearly not working.
Current proposed workaround: upgrade to version 4.23.2+ and run “liquibase status” before running any other Liquibase commands.
Steps To Reproduce

Create a brand new Cassandra database

Connect LB project to new DB

Run 'liquibase update-sql' (this should be the very first command run on this database)

Error message:

Unexpected error running Liquibase: Error executing SQL SELECT COUNT(*) FROM getnet.DATABASECHANGELOGLOCK where locked = TRUE ALLOW FILTERING: [Simba][CassandraJDBCDriver](500211) ERROR Invalid query: SELECT COUNT(*) FROM getnet.DATABASECHANGELOGLOCK where locked = TRUE ALLOW FILTERING, Cause: com.simba.cassandra.shaded.datastax.driver.core.exceptions.InvalidQueryException: table databasechangeloglock does not exist.
[2023-05-15 13:39:41] FINE [liquibase.executor] Changelog query completed.
-- Create Database Lock Table
CREATE TABLE IF NOT EXISTS getnet.DATABASECHANGELOGLOCK (ID INT, LOCKED BOOLEAN, LOCKGRANTED timestamp, LOCKEDBY TEXT, PRIMARY KEY (ID));

-- Initialize Database Lock Table
TRUNCATE TABLE getnet.DATABASECHANGELOGLOCK;

INSERT INTO getnet.DATABASECHANGELOGLOCK (ID, LOCKED) VALUES (1, FALSE);

[2023-05-15 13:39:43] INFO [liquibase.command] Command execution complete
[2023-05-15 13:39:43] SEVERE [liquibase.integration] Error executing SQL SELECT COUNT(*) FROM getnet.DATABASECHANGELOGLOCK where locked = TRUE ALLOW FILTERING: [Simba][CassandraJDBCDriver](500211) ERROR Invalid query: SELECT COUNT(*) FROM getnet.DATABASECHANGELOGLOCK where locked = TRUE ALLOW FILTERING, Cause: com.simba.cassandra.shaded.datastax.driver.core.exceptions.InvalidQueryException: table databasechangeloglock does not exist.
liquibase.exception.CommandExecutionException: liquibase.exception.LockException: liquibase.exception.DatabaseException: Error executing SQL SELECT COUNT(*) FROM getnet.DATABASECHANGELOGLOCK where locked = TRUE ALLOW FILTERING: [Simba][CassandraJDBCDriver](500211) ERROR Invalid query: SELECT COUNT(*) FROM getnet.DATABASECHANGELOGLOCK where locked = TRUE ALLOW FILTERING, Cause: com.simba.cassandra.shaded.datastax.driver.core.exceptions.InvalidQueryException: table databasechangeloglock does not exist.
        at liquibase.command.CommandScope.execute(CommandScope.java:235)
        at liquibase.integration.commandline.CommandRunner.call(CommandRunner.java:55)
        at liquibase.integration.commandline.CommandRunner.call(CommandRunner.java:24)

Note: If you run "liquibase status" before running "liquibase update-sql" you do not get this error in v4.23.2+, but you do in v4.15 regardless of running "liquibase status" first.
Note: I tested these exact steps in v4.23.2 on a Postgres database without any issues, so this seems specific to Cassandra.
Expected/Desired Behavior
Users should be able to run ‘update-sql’ on an empty, new database without it failing on a Liquibase tracking table not existing.
Liquibase Version
4.23.2
Database Vendor & Version
Cassandra
Liquibase Integration
No response
Liquibase Extensions
No response
OS and/or Infrastructure Type/Provider
No response
Additional Context
No response
Are you willing to submit a PR?

[ ] I'm willing to submit a PR (Thank you!)

Hello @loragriffin, thank you for letting us know of this issue.
Currently, Simba Cassandra JDBC driver is not available for download, as it has been deprecated. With the newest Cassandra driver, I haven't been able to replicate the bug. Would it be possible to update to this latest driver?
Thank you,
Tatiana

I was able to reproduce this issue with the ING driver.

Liquibase version 4.25.0
Liquibase Cassandra extension version 4.25.0
ING driver

If the DBCL & DBCLL table doesn't exist in the database, the following error occurs when trying to run the with the update-sql
Unexpected error running Liquibase: Error executing SQL SELECT COUNT(*) FROM DATABASECHANGELOGLOCK where LOCKED = TRUE AND LOCKEDBY = '<IP>' ALLOW FILTERING: com.datastax.oss.driver.api.core.servererrors.InvalidQueryException: table databasechangeloglock does not exist

@Tylorjg I re-tested this with liquibase and liquibase-cassandra version 4.25.0 and I'm getting a different error, though I think it's coming from the same place.
Here's my output:
-- Create Database Lock Table
CREATE TABLE IF NOT EXISTS DATABASECHANGELOGLOCK (ID INT, LOCKED BOOLEAN, LOCKGRANTED timestamp, LOCKEDBY TEXT, PRIMARY KEY (ID));

-- Initialize Database Lock Table
TRUNCATE TABLE DATABASECHANGELOGLOCK;

INSERT INTO DATABASECHANGELOGLOCK (ID, LOCKED) VALUES (1, FALSE);

Unexpected error running Liquibase: Error executing SQL SELECT COUNT(*) FROM DATABASECHANGELOGLOCK where LOCKED = TRUE AND LOCKEDBY = 'MYIP' ALLOW FILTERING: com.datastax.oss.driver.api.core.servererrors.InvalidQueryException: No keyspace has been specified. USE a keyspace, or explicitly specify keyspace.tablename

This shouldn't happen, and it doesn't with PostgreSQL. I believe Liquibase is trying to query the DBCLL table in order to add some SQL statement to the file, but it doesn't consider the case that the table could not exist.
I'll let the team know about this so they can start working on a fix. In the meantime, let me know if there's anything I can do to help out.

Hello @tati-qalified - are you to reproduce it using Liquibase and Cassandra extension v 4.28.0 ? As we are using the new driver and fixed a lot of stuff in this extension I hope that this may be fixed.

@filipelautert it doesn't seem to be fixed - there's an error when trying to create the DBCL table, so running update-sql fails entirely.
Unexpected error running Liquibase: No keyspace has been specified.
USE a keyspace, or explicitly specify keyspace.tablename
[Failed SQL: (0) CREATE TABLE IF NOT EXISTS DATABASECHANGELOG( ID TEXT, AUTHOR TEXT, FILENAME TEXT, DATEEXECUTED timestamp, ORDEREXECUTED INT,
EXECTYPE TEXT, MD5SUM TEXT, DESCRIPTION TEXT, COMMENTS TEXT, TAG TEXT, LIQUIBASE TEXT, CONTEXTS TEXT, LABELS TEXT, DEPLOYMENT_ID TEXT,PRIMARY KEY (ID, AUTHOR, FILENAME))]

@filipelautert it doesn't seem to be fixed - there's an error when trying to create the DBCL table, so running update-sql fails entirely.
Unexpected error running Liquibase: No keyspace has been specified.
USE a keyspace, or explicitly specify keyspace.tablename
[Failed SQL: (0) CREATE TABLE IF NOT EXISTS DATABASECHANGELOG( ID TEXT, AUTHOR TEXT, FILENAME TEXT, DATEEXECUTED timestamp, ORDEREXECUTED INT,
EXECTYPE TEXT, MD5SUM TEXT, DESCRIPTION TEXT, COMMENTS TEXT, TAG TEXT, LIQUIBASE TEXT, CONTEXTS TEXT, LABELS TEXT, DEPLOYMENT_ID TEXT,PRIMARY KEY (ID, AUTHOR, FILENAME))]

Hi @tati-qalified - are you using cassandra or aws?  If it's AWS in master branch there is a new property called liquibase.cassandra.awsKeyspacesCompatibilityModeEnabled in the liquibase.properties file. Defining it to true means we are running against an AWS Keyspaces instance and need to use some alternative implementations to bypass the unimplemented CQL features in Keyspaces.

@filipelautert I've been able to test this, though I'm not sure if the results are the expected behaviour or not.
Steps taken:

Set up Cassandra through Docker
Connected through DBeaver and created a keyspace
Ran liquibase status
Ran liquibase update-sql

Both commands run successfully, the databasechangeloglock table is created, but the databasechangelog table is not.
The generated code after step 4 includes the creation of the DBCL table:
-- Lock Database
UPDATE cycling.DATABASECHANGELOGLOCK SET LOCKED = TRUE, LOCKEDBY = 'GXCN4031 (<IP_ADDRESS>)', LOCKGRANTED =<PHONE_NUMBER>310 WHERE ID = 1 IF LOCKED = FALSE;

-- Create Database Change Log Table
CREATE TABLE IF NOT EXISTS cycling.DATABASECHANGELOG( ID TEXT, AUTHOR TEXT, FILENAME TEXT, DATEEXECUTED timestamp, ORDEREXECUTED INT, EXECTYPE TEXT, MD5SUM TEXT, DESCRIPTION TEXT, COMMENTS TEXT, TAG TEXT, LIQUIBASE TEXT, CONTEXTS TEXT, LABELS TEXT, DEPLOYMENT_ID TEXT,PRIMARY KEY (ID, AUTHOR, FILENAME));

-- *********************************************************************
-- Update Database Script
-- *********************************************************************
-- Change Log: changelog.xml
-- Ran at: 25/07/2024, 14:17
-- Against: @jdbc:cassandra://localhost:9042/cycling
-- Liquibase version: 4.28.0
-- *********************************************************************

-- Changeset changelog.xml::1::Liquibase
CREATE TABLE cycling.test_table (test_id INT, test_column VARCHAR, PRIMARY KEY (test_id));

INSERT INTO cycling.DATABASECHANGELOG (ID, AUTHOR, FILENAME, DATEEXECUTED, ORDEREXECUTED, MD5SUM, DESCRIPTION, COMMENTS, EXECTYPE, CONTEXTS, LABELS, LIQUIBASE, DEPLOYMENT_ID) VALUES ('1', 'Liquibase', 'changelog.xml',<PHONE_NUMBER>813, 1, '9:c31cbcc82ef990951e46cc173776542c', 'createTable tableName=test_table', '', 'EXECUTED', NULL, NULL, '4.28.0', '1927858753');

-- Release Database Lock
UPDATE cycling.DATABASECHANGELOGLOCK SET LOCKED = FALSE, LOCKEDBY = NULL WHERE ID = 1;

Is this the expected behaviour?

-- Create Database Change Log Table
CREATE TABLE IF NOT EXISTS cycling.DATABASECHANGELOG( ID TEXT, AUTHOR TEXT, FILENAME TEXT, DATEEXECUTED timestamp, ORDEREXECUTED INT, EXECTYPE TEXT, MD5SUM TEXT, DESCRIPTION TEXT, COMMENTS TEXT, TAG TEXT, LIQUIBASE TEXT, CONTEXTS TEXT, LABELS TEXT, DEPLOYMENT_ID TEXT,PRIMARY KEY (ID, AUTHOR, FILENAME));

Hi @tati-qalified ! this seems right and should not fail this time. So it was fixed in the last releases and we can close this one?


HELP URI INCORRECT

hey i dit everything describe but it does not work at redirection uri

Make sure your redirect URI actually matches your domain name


Stop docker container services on host with crontab-ui

Hi,
I have installed with docker compose file for crontab-ui. I want to stop other docker services on the same machine with a job like "docker stop [machine_name]", but I couldn't understand how crontab-ui will interfere with the cronjob file on the host machine. I've read many documents but couldn't find a solution.
For example, even when I create it as follows, it cannot interfere with the cronjob file on the host machine.
docker run -d -p 8000:8000 -v /etc/cron.d:/etc/crontabs alseambusher/crontab-ui
Do I need to type a path into the "Environment Variables" field in the crontab-ui web interface? If yes, which path should I specify?
Can you help me?

To do this you need:

docker-CLI in the crontab-UI container by installing docker inside the container with -> # apk add docker but if you killed the container you have to install docker every time !, so you have to add docker to the DOCKEFILE & build your own IMAGE:

git clone https://github.com/alseambusher/crontab-ui.git
cd crontab-ui
vim Dockerfile & add docker to the end of "RUN   apk --no-cache add" like:

docker build -t alseambusher/crontab-ui .

run & interface the crontab-UI container with the docker daemon of the host-machine by adding -v /var/run/docker.sock:/var/run/docker.sock:

docker run -v /var/run/docker.sock:/var/run/docker.sock -d -p 8000:8000 alseambusher/crontab-ui

///////////////////////////////////////////////////////////////////////////////////////////////////////////
OR you can use the image I already built: oxismailxo/crontab-ui

docker run -v /var/run/docker.sock:/var/run/docker.sock -d -p 8000:8000 oxismailxo/crontab-ui

Good luck friend :)


Assets and gulpfile improvements

This is a work in progress. Thus far I:

Added /vendor/ (local gems) to .gitignore #249
Moved non-assets like gulp helper and Dockerfile to lib/.
Splitted js into js for distribution files and _js for source scripts to be concatenated and uglified.
Splitted img into img and _img for source images to be optimized.
Updated vendor scripts, simple-jekyll-search and mermaid, to latest version.
Rewrote gulpfile.js entirely providing a non-destructive incremental optimization flow. #250
Wrote a git pre-commit hook.
Updated README.md.

That's pretty packed with new stuff.
I have to say that some of the file were intentionally placed into assets as I didn't want for somebody that wouldn't use them to be scared away by the amount of files visible in root.

I have to say that some of the file were intentionally placed into assets as I didn't want for somebody that wouldn't use them to be scared away by the amount of files visible in root.

I can put them in a lib dir.

Double checked everything.

I will have to take some time to review it all calmly, thanks for your PR. 👍

Do you think you can break down this pull request into multiple smaller ones? That would be easier to keep track and I'll be able to process them much faster.

I will try it later.

Finished breaking it in smaller PRs so I am closing this.


import_function_comments / ValueError: need more than 2 values to unpack

Traceback
...
File "C:\Users\john\AppData\Roaming\Hex-Rays\IDA Pro\IDASynergy\IDASynergyIO.py", line 482, in import_function_comments
    for ea, comment, isRep in comment_list:
ValueError: need more than 2 values to unpack

Diff and patch
--- /tmp/git/IDASynergy/IDASynergy/IDASynergyIO.py        2014-12-01 18:49:44.610691000 +0400
+++ "C:\\Users\\john\\AppData\\Roaming\\Hex-Rays\\IDA Pro\\IDASynergy\\IDASynergyIO.py"     2014-12-02 16:09:08.551779100 +0400
@@ -479,7 +479,7 @@

     @importer(7)
     def import_function_comments(self, comment_list):
-        for ea, comment, isRep in comment_list:
+        for ea, (comment, isRep) in comment_list:
             if isRep == 1:
                 SetFunctionCmt(ea, str(comment), 1)
             elif isRep == 0:

Oops, fixed it.
Thank you for taking the time to report it.


Add extra info when running E2E tests 2

Describe your changes :

I worked on the ..... because ...

Type of change :

[x] Bug fix
[x] Improvement
[x] New feature
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation

Frontend Preview (Screenshots) :
For frontend related change, please link screenshots of your changes preview! Optional for backend related changes.

Checklist:

[x] I have read the CONTRIBUTING document.
[ ] I have commented on my code, particularly in hard-to-understand areas.
[ ] I have added tests that prove my fix is effective or that my feature works.
[x] All new and existing tests passed.

Reviewers

Skipping these CI-only changes as they only get applied once in main


Intermittent failure - WebSubContentTypeSupportTestCase.testAuthenticatedTextContentReceiptForRemoteHub

Description:
[2019-02-22 07:12:30,308] INFO {WebSubContentTypeSupportTestCase} - testAuthenticatedTextContentReceiptForRemoteHub: RUNNING
[2019-02-22 07:13:15,310] SEVERE {org.ballerinalang.test.service.websub.basic.WebSubContentTypeSupportTestCase} - testAuthenticatedTextContentReceiptForRemoteHub: FAILED -> Timeout expired waiting for matching log: Text WebSub Notification Received by websubSubscriber: Text update for remote Hub

Refer https://github.com/ballerina-platform/ballerina-lang/issues/13922.


Fix treating TTL of access token as expiration timestamp

Fixes #103
Types of changes
What types of changes does your code introduce? Put an x in all the boxes that apply:

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

Checklist:
Go over all the following points, and put an x in all the boxes that apply.
Please, please, please, don't send your pull request until all of the boxes are ticked. Once your pull request is created, it will trigger a build on our continuous integration server to make sure your tests and code style pass.

[x] I have read the CONTRIBUTING document.
[x] My pull request addresses exactly one patch/feature.
[x] I have created a branch for this patch/feature.
[x] Each individual commit in the pull request is meaningful.
[x] I have added tests to cover my changes.
[x] If my change requires a change to the documentation, I have updated it accordingly.

If you're unsure about any of these, don't hesitate to ask. We're here to help!

There's an unrelated failing test. I haven't really dived into it, but it comes to me it actually tests a dependency – http client.

Thanks! I fixed the failing tests upstream. Please rebase


Fix (UI/Strings/vi): improve translation

Some minor updates for Vietnamese UI

There are some extra spaces in the translations. Can you remove them?

well let me check
thanks


Macro: Attachment points are not attached to monomers

Steps to Reproduce

Open Ketcher and switch to Macro mode
Add several monomers to canvas
Select Single bond tool and hover over monomers

Actual behavior
Attachment points are not attached to monomers. It is impossible to connect monomers and there are many errors in DevTool console.
Expected behavior
Attachment points are attached to monomers and it is possible to connect monomers.
Screenshots
https://github.com/epam/ketcher/assets/62464241/dc6dea8b-3f34-489f-85d5-0a3a86b5495e
https://github.com/epam/ketcher/assets/62464241/4ce53766-8f1a-43ae-b073-7db22345d133
Desktop (please complete the following information):

OS: Windows 11
Browser Firefox
Version 122.0 (64-bit)

Ketcher version
Version 2.18.0-rc.2

Tested. Bug is fixed.


Validating Annotations at Compile Time does not seem to work as described in doc

Expected Behavior
When following the docs here:
https://micronaut-projects.github.io/micronaut-validation/snapshot/guide/index.html#compileTimeValidation
I expect the below annotation to be validated
import jakarta.validation.Constraint

@Retention(AnnotationRetention.RUNTIME)
@Constraint(validatedBy = [])
annotation class TimeOff(
    @DurationPattern val maxDuration: String
)

Actual Behaviour
Given the following service
import jakarta.inject.Singleton
import jakarta.validation.constraints.NotBlank
import java.time.Duration

@Singleton
open class HolidayService {

    open fun startHoliday(
        @NotBlank person: String,
        @TimeOff(maxDuration = "rubbish") duration: String // should give compile time error
    ): String = "Person $person is off on holiday for ${Duration.parse(duration).toDays()} days"
}

@TimeOff(maxDuration = "rubbish") does not fail compilation.
Annotation DurationPattern is defined like this
import jakarta.validation.Constraint
import kotlin.annotation.AnnotationRetention.RUNTIME

@Retention(RUNTIME)
@Constraint(validatedBy = [])
annotation class DurationPattern(
    val message: String = "invalid duration ({validatedValue})" // (2)
)

DurationPatternValidator is defines like this
import io.micronaut.core.annotation.AnnotationValue
import io.micronaut.validation.validator.constraints.ConstraintValidator
import io.micronaut.validation.validator.constraints.ConstraintValidatorContext

class DurationPatternValidator : ConstraintValidator<DurationPattern, CharSequence> {
    override fun isValid(
        value: CharSequence?,
        annotationMetadata: AnnotationValue<DurationPattern>,
        context: ConstraintValidatorContext): Boolean {
        return value == null || value.toString().matches("^P?\\d+D$".toRegex())
    }
}

/src/main/resources/META-INF/services/io.micronaut.validation.validator.constraints.ConstraintValidator
no.javatec.DurationPatternValidator

Steps To Reproduce
Clone the example application and run
./gradlew clean build
Please observe that the tests are executed.
Environment Information
Ubuntu 22.04
JDK 21 (Temurin)
Example Application
https://github.com/roar-skinderviken/compile-time-validation-issue
Version
4.5.0

the validator needs to be your annotation processor classpath and cannot be in the same project/source tree

Thanks for looking into this @graemerocher
I've updated the example app
https://github.com/roar-skinderviken/compile-time-validation-issue
to a multi-module project with the following modules:

custom-annotations (Kotlin)
demo-app (Kotlin)
demo-app-java

Build fails as expected for demo-app-java when applying @TimeOff(duration = "rubbish") to HolidayService#startHoliday.
The Kotlin demo-app still builds without errors with the same annotation. Any advice on how to fix this will be appreciated.


Encoder pins don't match

Since I can't find PEC11R-4315F-N0012-ND, I use PEC11R-4315F-S0012-ND as encoders(also works according to the instruction). However, the encoders have 5 pins with 3 on one side and 2 on the other, while there are only 3 cutouts on the board. I looked at the PCB image and found that the demo board has 3 pins as well. How do I deal with this? Can I just cut off the extra 2 pins of the encoders?

I'm having the same problem😱

You can use it. PEC11R-4315F-S0012-ND have built-in switch which PEC11R-4315F-N0012-ND don't have. Extra 2 pins are switch pins.

@NullMember So can I trim the extra 2 pins off?

@biggytruck yes you can :)


ability to create webhooks based on events in the system / plugins

Scenarios

trigger emails (in 3rd party system) based on plugin actions ratelimit / quota / billing
trigger actions in API provider system / CRM based on events such as new consumer, update keys, etc ...

Behavior

a plugin or perhaps a core system API endpoint
custom callback url (anywhere on the network)
send JSON data matching the action / plugin related details

#326

I get its duplicate (search for "hook" didn't return anything at the time) but this one has better details than #326

Then post your comment on 326.


docs: create simple getting started

Close: #961

@FuelLabs/sdk-ts I've committed some suggestions now I need the approval again :pray:


Add example deployments for prometheus / grafana

Fixes #969 by adding example deployments for prometheus & grafana. It updates the ds-hostnet-split example to match quickstart defined in /docs/prometheus.md so that users can follow along and end up with a working solution.
This also adds sample dashboards to Grafana which provide metrics for both Contour & Envoy.
Signed-off-by: Steve Sloka<EMAIL_ADDRESS>

Thanks to @jipperinbham fixed a quick issue with the statsd forwarder. =)

I'm not qualified to review this but i'm glad to see these prometheus dashboards included.

@stevesloka @rata @jipperinbham can you please finalise the review of this PR. I'd like it to either land or move back into development by EOD April 12. Thank you.

I think this is good to merge @davecheney, there is an issue with how the metrics are visualized which is tracked in #1008

@stevesloka can you merge this or are you blocked on #1008?

@rata thanks for the reply! I agree with you that this needs some work. We did most of this work in Gimbal which only uses the split-model deployment because of network perf reasons. My goal with this was to enable folks to start to look at what we had for metrics and stir inspiration (like you've been doing). =)
I think once we can move to Envoy 1.10 then we can drop the statsd_forwarder and make all this much simpler. I'd like to merge this, then open a new issue to track the work that needs to be done once we're at Envoy v1.1.0.

@stevesloka sounds good to me. Let me know if I can help with the related issues :-)


Property of mutable type 'NSMutableURLRequest' has 'copy' attribute; an immutable object will be stored instead

When Analyzing my project, I get that issue : /Project/Pods/AFNetworking/AFNetworking/AFURLRequestSerialization.m:646:1: Property of mutable type 'NSMutableURLRequest' has 'copy' attribute; an immutable object will be stored instead

duplicated with Logic error in AFURLRequestSerialization.h #3916


Proxy and auto-ttl on subdomain

Hi,
I have the following www subdomain record
www:
  - type: A
    value: <IP_ADDRESS>
  - type: TXT
    value: "4|https://example.de"

Using the latest (v0.0.4) version of octodns-cloudflare, I'd like proxy and set auto-ttl  for the www subdomain as follows
www:
  octodns:
    cloudflare:
      proxied: true
      auto-ttl: true
  - type: A
    value: <IP_ADDRESS>
  - type: TXT
    value: "4|https://example.de"

however this results in the following stacktrace:
Traceback (most recent call last):
  File "/usr/local/bin/octodns-sync", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/octodns/cmds/sync.py", line 62, in main
    manager.sync(
  File "/usr/local/lib/python3.11/dist-packages/octodns/manager.py", line 769, in sync
    ps, d = future.result()
            ^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/octodns/manager.py", line 62, in result
    return self.func(*self.args, **self.kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/octodns/manager.py", line 509, in _populate_and_plan
    source.populate(zone, lenient=lenient)
  File "/usr/local/lib/python3.11/dist-packages/octodns/provider/yaml.py", line 363, in populate
    self._populate_from_file(source, zone, lenient)
  File "/usr/local/lib/python3.11/dist-packages/octodns/provider/yaml.py", line 307, in _populate_from_file
    yaml_data = safe_load(fh, enforce_order=self.enforce_order)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/octodns/yaml.py", line 71, in safe_load
    return load(stream, SortEnforcingLoader if enforce_order else ContextLoader)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/yaml/__init__.py", line 81, in load
    return loader.get_single_data()
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/yaml/constructor.py", line 49, in get_single_data
    node = self.get_single_node()
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/yaml/composer.py", line 36, in get_single_node
    document = self.compose_document()
               ^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/yaml/composer.py", line 55, in compose_document
    node = self.compose_node(None, None)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/yaml/composer.py", line 84, in compose_node
    node = self.compose_mapping_node(anchor)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/yaml/composer.py", line 133, in compose_mapping_node
    item_value = self.compose_node(node, item_key)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/yaml/composer.py", line 84, in compose_node
    node = self.compose_mapping_node(anchor)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/yaml/composer.py", line 127, in compose_mapping_node
    while not self.check_event(MappingEndEvent):
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/yaml/parser.py", line 98, in check_event
    self.current_event = self.state()
                         ^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/yaml/parser.py", line 438, in parse_block_mapping_key
    raise ParserError("while parsing a block mapping", self.marks[-1],
yaml.parser.ParserError: while parsing a block mapping
  in "./config/personal/example.com.yaml", line 70, column 3
expected <block end>, but found '-'
  in "./config/personal/example.com.yaml", line 74, column 3

Is there now way to manage a subdomain with multiple entries while using proxy?

The multi-type setup is an array of record details, each starting with the - so the octodns bit needs to live under the one of those you'd like it to apply to, something like:
www:
  - octodns:
       cloudflare:
         proxied: true
         auto-ttl: true
    type: A
    value: <IP_ADDRESS>
  - type: TXT
    value: "4|https://example.de"

There's a lot to not like about YAML, it's the best of not great options, but arrays are probably my least favorite and regardless is the most non-obvious.

Ah, I see. I'd like the octodns bit to apply to both records so I ended up doing something like this:
www:
  - octodns:
      cloudflare:
        proxied: true
        auto-ttl: true
    type: A
    value: <IP_ADDRESS>
  - octodns:
      cloudflare:
        proxied: true
        auto-ttl: true
    type: TXT
    value: "4|https://example.de"

I would say that this all makes sense in my head now but that would be a lie. The joys of YAML... 😏
Thanks for your help!

For bonus points/if you're going to be using that block a lot you can utilize YAML anchors to avoid some duplication, haven't tested it, but I think this should work.
www:
  - octodns: &SHARED_OCTODNS
      cloudflare:
        proxied: true
        auto-ttl: true
    type: A
    value: <IP_ADDRESS>
  - octodns: *SHARED_OCTODNS
    type: TXT
    value: "4|https://example.de"

There's a bit more detail and description in the basic example https://github.com/octodns/octodns/blob/main/examples/basic/config/my-domain.com.yaml

Thanks, it works.
Also, my mind is blown as I had no idea YAML anchors were a thing in octodns.

Also, my mind is blown as I had no idea YAML anchors were a thing in octodns

They're actually part of the YAML standard and supported by pyyaml. The rabbit hole goes much much deeper, but that's kind of where I stop with things as they quickly get more complicated/confusing than useful.


Removing unused UploadedKeyStoreSource.LOGGER with wrong name

Hi. This PR has received 2 approvals. Do you think you can merge it ?


Chrome 80 error

Slick does not work on Chrome 80
What is observed behaviour?
...  When the site is viewed on Chrome version 80, the images in slick container appear zoomed in and spanning the entire website, plugin is not usable in its' current state.
====================================================================
More Details
I use Slick 1.8.1, this issue started happening with Google 80. Issue is not reproduced on Firefox.

This also appears to be an issue with me as well. Css Grids I think are throwing it off

The other images which are not in a slick container gets affected of the zoom in effect as well for some reason.

noticed in my case, it happens when slick is a child of a grid using fr for its columns. replacing the fr with the equivalent calculation works, which is (free space - total column gap) / columns.
i had 4 columns with a column-gap of 1.5rem, so this equated to repeat(4, calc(calc(100% - 1.5rem * 3) / 4))
not the best solution, but works for now

I tracked it down to code segment:
Slick.prototype.setDimensions...
        _.listWidth = _.$list.width();
        _.listHeight = _.$list.height();

       if (_.options.vertical === false && _.options.variableWidth === false) {
            _.slideWidth = Math.ceil(_.listWidth / _.options.slidesToShow);
            _.$slideTrack.width(Math.ceil((_.slideWidth * _.$slideTrack.children('.slick-slide').length))); // This is making the width to extend really wide

        } else if (_.options.variableWidth === true) {
            _.$slideTrack.width(5000 * _.slideCount);
        } else {
            _.slideWidth = Math.ceil(_.listWidth);
            _.$slideTrack.height(Math.ceil((_.$slides.first().outerHeight(true) * _.$slideTrack.children('.slick-slide').length)));
        }
        var offset = _.$slides.first().outerWidth(true) - _.$slides.first().width();
        if (_.options.variableWidth === false) _.$slideTrack.children('.slick-slide').width(_.slideWidth - offset);

I m too getting the same issue, Any solutions

Run into this problem as well. However, seems to be working in the latest Chrome Canary (v82) - so could this be more of a bug on Chrome's part?

Google just released a small incremental update, which made sliders work again. For me, at least.

Also seeing this in iOS browsers now

Also seeing this in iOS browsers now

I read somewhere that it was a change in how the minimum width of grid items was calculated. If a grid item had overflowing content and no min-width specified it would default to the width of the content. Setting min-width:0; on the grid item containing the slider has worked for me.


"Traian" is listed in the drop-down menu

Description:
"Traian" is listed in the drop-down menu alongside its corresponding county and commune, according to the law
Precondition:
The website is up an running.

Step 1
Type "Traian" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Traian, TELEORMAN (Traian)" and "Comuna Traian, TELEORMAN".


Use local registry as a pull through cache for db

Separate ticket as requested in https://github.com/aquasecurity/trivy-db/issues/441#issuecomment-2411744048 - additional feature to #441.
Just like it would allow the Gitlab proxy, shouldn't this work with any proxy (and therefore reduce load)?
Therefore, setting up a local Registry as a pull through cache should be possible.
If so, this is worth explicitly documenting on https://aquasecurity.github.io/trivy/v0.56/docs/configuration/db/

I ran the following commands, but it didn't work.
$ docker run -d -p 5000:5000 --restart=always --name registry -e REGISTRY_PROXY_REMOTEURL=https://ghcr.io registry:2
$ docker pull localhost:5000/aquasecurity/trivy-db:2
2: Pulling from aquasecurity/trivy-db
unsupported media type application/vnd.aquasec.trivy.config.v1+json
$ oras pull localhost:5000/aquasecurity/trivy-db:2
Error response from registry: recognizable error message not found: GET "http://localhost:5000/v2/aquasecurity/trivy-db/manifests/2": response status code 403: Forbidden
$ crane pull --insecure localhost:5000/aquasecurity/trivy-db:2 foo.tar
2024/10/15 11:19:15 retrying net/http: TLS handshake timeout
2024/10/15 11:19:25 retrying net/http: TLS handshake timeout
2024/10/15 11:19:36 retrying net/http: TLS handshake timeout
Error: Get "https://localhost:5000/v2/": net/http: TLS handshake timeout; GET http://localhost:5000/v2/: unexpected status code 403 Forbidden

In the case of Docker, it seems to be going to GHCR for queries, but the others are failing with 403. While Docker has a configuration for mirrors, we have no idea about that protocol. It would be appreciated if someone could share the knowledge.

What happens when you pull http://localhost:(etc)  ?

The following commands are working with a local registry on https:
docker exec -i "${CONTAINER_NAME}" trivy image --download-db-only --db-repository local-registry/aquasec/trivy-db
docker exec -i "${CONTAINER_NAME}" trivy image --download-java-db-only --java-db-repository local-registry/aquasec/trivy-java-db

Documentation can be improved however, see also https://github.com/aquasecurity/trivy/discussions/7794

@wkoot Did you configure the local registry as a pull-through cache?

Yes, using registry:2.8.3. But I'm not running a custom REGISTRY_PROXY_REMOTEURL, just the default docker hub.
Aside from mapping port 5000, port 5001 is also mapped to provide a https interface for pulling.
I don't need to provide port number in the docker run; so no local-registry:5000 but just local-registry.

To configure a Registry to run as a pull through cache, the addition of a proxy section is required to the config file.

According to the document, the proxy setting seems to be required. Could you share the commands you ran?

I'm using a config file mounted to /etc/docker/registry/config.yml in the container:
---
version: 0.1
log:
  fields:
    service: registry
storage:
  cache:
    blobdescriptor: inmemory
  filesystem:
    rootdirectory: /var/lib/registry
http:
  addr: <IP_ADDRESS>:5000
  headers:
    X-Content-Type-Options: [nosniff]
health:
  storagedriver:
    enabled: true
    interval: 10s
    threshold: 3
proxy:
  remoteurl: https://registry-1.docker.io
  username: [[[docker-username]]]
  password: [[[docker-api-token]]]
delete:
  enabled: true
maintenance:
  uploadpurging:
    enabled: true
    age: 24h
    interval: 1h
    dryrun: false
  readonly:
    enabled: false

I tried the above config file with docker run -d -p 5000:5000 --restart=always --name registry -v pwd/config.yml:/etc/distribution/config.yml registry:2, but it didn't work.
$ trivy image --download-db-only --db-repository localhost/aquasec/trivy-db:2
2024-10-30T10:10:14+04:00       INFO    [vulndb] Need to update DB
2024-10-30T10:10:14+04:00       INFO    [vulndb] Downloading vulnerability DB...
2024-10-30T10:10:14+04:00       INFO    [vulndb] Downloading artifact...        repo="localhost/aquasec/trivy-db:2"
2024-10-30T10:10:17+04:00       WARN    See https://aquasecurity.github.io/trivy/dev/docs/references/troubleshooting#db
2024-10-30T10:10:17+04:00       FATAL   Fatal error     init error: DB error: failed to download vulnerability DB: OCI artifact error: failed to download vulnerability DB: failed to download artifact from localhost/aquasec/trivy-db:2: OCI repository error: 1 error occurred:
        * GET https://index.docker.io/v2/localhost/aquasec/trivy-db/manifests/2: UNAUTHORIZED: authentication required; [map[Action:pull Class: Name:localhost/aquasec/trivy-db Type:repository]]

$ trivy image --download-db-only --db-repository localhost:5000/aquasec/trivy-db:2
2024-10-30T10:10:23+04:00       INFO    [vulndb] Need to update DB
2024-10-30T10:10:23+04:00       INFO    [vulndb] Downloading vulnerability DB...
2024-10-30T10:10:23+04:00       INFO    [vulndb] Downloading artifact...        repo="localhost:5000/aquasec/trivy-db:2"
2024-10-30T10:10:54+04:00       FATAL   Fatal error     init error: DB error: failed to download vulnerability DB: OCI artifact error: failed to download vulnerability DB: failed to download artifact from localhost:5000/aquasec/trivy-db:2: OCI repository error: 1 error occurred:
        * Get "https://localhost:5000/v2/": net/http: TLS handshake timeout; GET http://localhost:5000/v2/: unexpected status code 403 Forbidden

If the port is not specified, it is considered as a part of repository name. https://index.docker.io/v2/localhost/aquasec/trivy-db/manifests/2

If the port is not specified, then docker will pull over the default port of the protocol. Which would be 80 for http and 443 for https.
I believe that it may have been different in the past, as I've seen default setups with 5000 for http and 5001 for https.
But there's no reference left to that in the docs https://docs.docker.com/reference/cli/docker/image/pull/#pull-from-a-different-registry
However, in your case there's quite a telling error on the url that should actually work: GET http://localhost:5000/v2/: unexpected status code 403 Forbidden
Perhaps it's worth debugging directly instead of via docker commands, e.g. with curl http://localhost:5000/v2/_catalog


[WIP] generated amber input files (.top, .crd, .leap_in, .mol2) as an archive, and script for generating

addressing #15 with script oebToAmberMol2TopCrd.py

@davidlmobley

So, what about removing the large set of individual output files and replacing with a single .tar.gz, @vtlim ? This makes it a bit hard to see what's changed in the diff ("files changed" at top) and also presumably it's going to be a lot slower to clone this way than if it's in an archive.
You should be able to achieve this - if it sounds OK to you - by creating an archive out of the individual files, adding it, and removing the individual files (i.e. git rm)

(Then you just make a new commit and push with those changes and it will update this PR, @vtlim )

I think that's checked in as well.
On Thu, Jun 23, 2016 at 9:12 PM, John Chodera<EMAIL_ADDRESS>wrote:

Do we even want to check these files in? Compared to the simulations
that will produce the estimated physical properties we will use as input,
these files should essentially take no time to generate on the fly. Why not
just check in a script that algorithmically generates them in the process
of running simulations to compute physical properties?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/open-forcefield-group/open-forcefield-data/pull/17#issuecomment-228254167,
or mute the thread
https://github.com/notifications/unsubscribe/AGzUYe6aCAzgQazqX7IXTlVjNBFLwN7Sks5qO1kggaJpZM4I9YWh
.

--
David Mobley
<EMAIL_ADDRESS>949-385-2436

I do actually think though on occasion it will be helpful to me to have
these on hand - i.e. if I want to look at populations of different
parm@frosst types or something, I'll already have the files to do so. So
unless you see a big downside I'd rather have both the files and the script
as well. :) If you see a downside I can have her share them with me in a
different way, though that seems to add an unnecessary extra step.
On Thu, Jun 23, 2016 at 9:12 PM, John Chodera<EMAIL_ADDRESS>wrote:

Do we even want to check these files in? Compared to the simulations
that will produce the estimated physical properties we will use as input,
these files should essentially take no time to generate on the fly. Why not
just check in a script that algorithmically generates them in the process
of running simulations to compute physical properties?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/open-forcefield-group/open-forcefield-data/pull/17#issuecomment-228254167,
or mute the thread
https://github.com/notifications/unsubscribe/AGzUYe6aCAzgQazqX7IXTlVjNBFLwN7Sks5qO1kggaJpZM4I9YWh
.

--
David Mobley
<EMAIL_ADDRESS>949-385-2436

I do actually think though on occasion it will be helpful to me to have
these on hand - i.e. if I want to look at populations of different
parm@frosst types or something, I'll already have the files to do so.

You can generate a single typed mol2 or SDF file containing all the typed molecules.
For everything else, we could have a single script or method call to regenerate the files we need.

So unless you see a big downside I'd rather have both the files and the script
as well. :) If you see a downside I can have her share them with me in a
different way, though that seems to add an unnecessary extra step.

There is definitely a big downside to adding 8000 files to this repo. Let's not do that.
Depending on how big the tarball is, it may not be a good idea to include that either. Things get really slow when the repo gets to ~1GB in size...

@jchodera - FYI, the archived set of files is only 5 MB, so we believe it's worth including the whole set since it does take a few minutes to re-generate them. Vickie ( @vtlim ) is polishing the script used for generating these so we can finish this off (originally it required hand manipulation for a couple of special cases Chris Bayly had added to the set at the last minute).

Sure, 5 MB is fine.
An extra unintended file seems like it was added:
Model-Systems/AlkEthOH_distrib/files_for_c1302/.oebToAmberMol2TopCrd_edited.py.swp

OK, I checked this, @vtlim , and it seems to be in good shape so I'll merge. Thanks!


Load collection

load collection dialog
load collection api

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


~ patch only versions breaks some fixed packages versions

Describe the bug
I ve noticed that for example, the core package expect @mikro-orm/knex to install the version ~5.7.4 when using the core package with the same version. If you decide to have a fix version of the packages, then the installed knex package will be of a more recent version since ~ will allow any patch versions to be updated. The problem is that in 5.7.12 theAbstractSqlConnection#getKnexOptions is using mergeConfig which is not a method that is exported/exists in the core package version 5.7.4. Therefore, it breaks.
Stack trace
        const config = core_1.Utils.mergeConfig({
                                    ^

TypeError: core_1.Utils.mergeConfig is not a function
    at PostgreSqlConnection.getKnexOptions (/Users/adriendeperetti/Documents/02-personnel/01-projects/test-product-migration-cli/node_modules/@mikro-orm/knex/AbstractSqlConnection.js:118:37)
    at PostgreSqlConnection.createKnexClient (/Users/adriendeperetti/Documents/02-personnel/01-projects/test-product-migration-cli/node_modules/@mikro-orm/knex/AbstractSqlConnection.js:110:38)
    at PostgreSqlConnection.connect (/Users/adriendeperetti/Documents/02-personnel/01-projects/test-product-migration-cli/node_modules/@mikro-orm/postgresql/PostgreSqlConnection.js:12:28)
    at PostgreSqlDriver.connect (/Users/adriendeperetti/Documents/02-personnel/01-projects/test-product-migration-cli/node_modules/@mikro-orm/core/drivers/DatabaseDriver.js:53:31)
    at MikroORM.connect (/Users/adriendeperetti/Documents/02-personnel/01-projects/test-product-migration-cli/node_modules/@mikro-orm/core/MikroORM.js:70:46)
    at PostgreSqlMikroORM.init (/Users/adriendeperetti/Documents/02-personnel/01-projects/test-product-migration-cli/node_modules/@mikro-orm/core/MikroORM.js:39:23)
    at async createConnection (/Users/adriendeperetti/Documents/02-personnel/01-projects/test-product-migration-cli/node_modules/@medusajs/product/dist/utils/create-connection.js:8:17)
    at async runMigrations (/Users/adriendeperetti/Documents/02-personnel/01-projects/test-product-migration-cli/node_modules/@medusajs/product/dist/scripts/migration-up.js:40:17)
    at async /Users/adriendeperetti/Documents/02-personnel/01-projects/test-product-migration-cli/node_modules/@medusajs/product/dist/scripts/bin/run-migration-up.js:31:5

Node.js v18.13.0

To Reproduce
Steps to reproduce the behavior:

install<EMAIL_ADDRESS>init mikro orm

Expected behavior
The patch version shouldn't have introduced any breaking changes. I would say that the fact that the knex package use mergeConfig should have been part of a minor in order to not break earlier versions. what is your opinion on that?
Additional context
Add any other context about the problem here.
Versions

Dependency
Version

node
18.13.0

typescript
?

mikro-orm
5.7.4

your-driver
postgres

I guess we should lock the version instead of using ~ ranges. I am definitely not planning to deal with inter-package breaking changes, no plans to think about this sort of problems. So dont expect a fix for v5.7.4, you should just upgrade to latest, but I will try to deal with this for future releases.

I ll close this issue, but it might serve as an answer for other people running into the same issue


⚠ Bofrost.at has degraded performance

In 49dd73d, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1137 ms

Resolved: Bofrost.at performance has improved in 4885493 after 7 minutes.


  Can become immune to any effects when calibrated to atom size. 🤔
I thought of it when i played with MutedGalaxy on my server, we tried different sizes with monsters and tried to shoot arrows and throw bottles with effects at them and ourselfs...

Ok I took a look and I don't think that being immune to potion effects when being small is reasonable.
And sizes below 1/16 were made just for fun, they are pretty useless anyway imo.


Add react-atoms as dependency

When using this in a project, I'm getting the following error:
Error in ./~/react-object/lib/components/Value.js
Module not found: 'react-atoms/components/Twisty' in /webdev/project/node_modules/react-object/lib/components

Seems like you forgot to declare react-atoms in your dependency list.

Thanks @rexxars


Do not nullify the extra data from the config

For some reason the installer was assuming that if you dont do an
automatic installation, your "extra data" from the config file should be
gone.
I do not understand why as automatic is not the same as providing a
config file with values which may have nothing to do with the
installation.
This patch removes the nulling of the extra data
Fixes #24
Signed-off-by: Itxaka<EMAIL_ADDRESS>

ok, somehow this breaks the ros-installer -automatic in some weird way, 'cause Im seeing everything installed properly but then it cannot find the MachineRegistration kind in rancheros.cattle.io/v1
So before this patch, the data provided in the cloud-config would be erased if automatic was set...but if no data is passed...why does it matter? And how that affects the ros-operator, which is the one that installs the  rancheros.cattle.io/v1 api to not recognize that kind?
any ideas @mudler ? Im setting a test env locally to check manually what is going on but I dont really understand it properly as everything seems to be correctly installed, ros-operator included....

It might be also some flakyness in the tests due to timeouts, did you tried retriggering/locally? is that persisting?

triggered twice, failed twice in the same point. Currently trying locally

ah! it's green now :D

Locally also worked....wtf


[travis] Add openjdk7 and openjdk8

openjdk6 no longer supported on new travis builds (ie trusty).  Pushed another commit to remove it.

I'll pass on the maven wrapper.  Updated .travis.yml in https://github.com/OWASP/json-sanitizer/commit/a556de4e769e1d88f1b54365d4a427cfa13d7ca2


Project tooling to generate example property descriptions

Problem
This project maintains several examples. These serve multiple purposes

Validate correctness of schema changes
Serve as templates for users
Document the semantics about configuration properties for both users who set them, and maintainers who implement the interpretation of these properties.

The last point is poorly served. The comments on these examples contain important information, like the priority between .attribute_limits and .tracer_provider.limits, the set of recognized values for samplers, the set of recognized values for view stream aggregations, and more. Trying to ensure that comments are maintained consistently across examples is time consuming and error prone.
Solution
This PR introduces new project tooling to generate the comments consistently across example files.
How it works:

The ./schema/type_descriptions.yaml file defines descriptions for each of the properties of each type defines in the ./schema data model.
The ./scripts/generate-comments.js is a script which for a given input configuration file will:

Parse the YAML.
Walk through each key / value pair, and for each:

Compute the JSON dot notation location of the current key / value pair.
Find the first matching rule in type_description.yaml. Iterate through the rules and evaluate the key / value pair dot notation location against each of the rule's path_patterns.
Inject / overwrite comments for its properties according to type_descriptions.yaml.

Write the resulting content to specified output file or to the console.

The make generate-descriptions command runs this process against each file in ./examples and overwrites each file in the process.
Alternatives considered
Can't we just use the JSON schema description field to encode this information?
Not easily, and with some drawbacks. In this PR I use a yaml parsing library to visit each key / value pair, evaluate its comment, and update the yaml parsing libraries in-memory representation of the comment for that pair. If the description information was encoded in the JSON schema, I'd need to combine capabilities from two libraries: one js library for parsing / validating yaml according to the JSON schema, and another js library for visiting each node and updating representation. The JSON schema parsing library doesn't provide tools for mutating the state of the YAML comments. I don't see an obvious way to combine the necessary functionality from each of these libraries.
Additionally, JSON schema is written in JSON, which has poor support for the types of multi-line comments which are going to be common.
This approach has the drawback that the knowledge about a particular type is distributed across two places: the .json JSON schema file and the type_descriptions.yaml file. But in exchange for this, we get a simple script for tooling, and its ready to use today 🙂 .

Per our convo in the 7/22/24 config SIG, I've pushed a commit to run make generate-descriptions and check for diff in the build.

I've resolved merge conflicts. @open-telemetry/configuration-approvers please take another look. Im happy to iterate as needed, but we do need tooling to enforce consistent property descriptions.


changed csv unmarshalling to only strip quotes if quoting is set to "true"

When unmarshalling a tsv file where the individual fields are not quoted, the unmarshaller still tries to strip the quotes.   For a field such as:    , "Amazing" field,     , the unmarshaller will see the first quote and try to strip it off expecting another quote at the end of the field.  The end result is bindy unmarshaller completely fails for the whole record.   The fix is to look at the  "quoting" field and if qoutes are not expected, do not try to strip them.

Could you please add a unit test?

I will get a test on wednesday, and will change to make more backwards
compatible with defaults.
On Tue, Sep 11, 2018, 4:46 PM önder sezgin<EMAIL_ADDRESS>wrote:

Could you please add a unit test?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/apache/camel/pull/2518#issuecomment-420419552, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AYXt7OPRKRml2_Vnbv7IY-WFhYSq4MVUks5uaCEagaJpZM4WkIzt
.

I have changed to use a new annotation "removeQuotes" rather then "quoting" for backwards compatibility.  Also I have added a test that illustrates the problem

Originally, I thought the right way to handle it would be to base it on the quoting flag.
The problem with this approach is that the quoting flag default is set to false, while the default behavior is set to remove quotes.  So either solution of changing the quoting flag default or changing the unmarshalling to look at this flag could potentially break existing code relying on this default setting.

yes i think new option is needed for this case. as i said, having another option about quoting is a disadvantage. it seems it is needed. LGTM.

Thanks, merged on master.


Bump pretender dependency

Update pretender to 3.1.0 (or at least release lock from 3.0.x)

Specifically looking for this patch: https://github.com/pretenderjs/pretender/pull/280

A PR in miragejs already available: https://github.com/miragejs/miragejs/pull/227

https://github.com/miragejs/miragejs/pull/227 closes


[CLI] Fix 'Unexpected strict mode reserved word', bump version to 1.3

Looks like using 'let' was too ambitious :)
This should fix the issue https://github.com/facebook/react-native/issues/10976.
Test plan (required)
Travis & Circle CI tests on this PR.

I wonder if 'use strict' pragma is in the wrong place.
Because the issue states that "let" is only for strict mode.
But anyway, switching to var would be easiest solution

@facebook-github-bot shipit


Add CRUD for Subject

also altered deletePerson to be more consistent with rest of domain deletes - returns JSON with delete message rather than the the deleted person

SonarQube analysis reported 5 issues

 3 major
 2 minor

Watch the comments in this conversation to review them.
3 extra issues
Note: The following issues were found on lines that were not modified in the pull request. Because these issues can't be reported as line comments, they are summarized here:

 PersonController.java#L37: The Cyclomatic Complexity of this method "getPerson" is 13 which is greater than 10 authorized.
 JsonValidation.java#L64: Define a constant instead of duplicating this literal "Missing required field " 15 times.
 JsonValidation.java#L84: Define a constant instead of duplicating this literal " does not exist" 10 times.


[defaults]: Consider Reducing Default max_htlcx_accepted

https://github.com/bitcoin/bitcoin/pull/29873 proposes a 10,000 vbyte limit on unconfirmed parent TRUC(V3) transactions, which in the context of lightning would be our commitment transaction. Given our expected commitment weight in bolt-03 for anchor channels we can calculate the maximum HTLCs that would fit in this transaction limit:
(900 + 172 * num-htlc-outputs + 224)/4 = 10000 vbytes
num-htlc-outputs = 226

Divided between two channel participants we arrive at max-accepted-htlcs = 113, which is below LND's current limit of 483. While we'll definitely need dynamic commitments to migrate legacy channels to set a lower limit, upgrading the default now is a step in this direction for new  channels.
Opened this PR to start the conversation about the change of defaults in the context of LND as a project. If there's feedback on this limit, I think it makes sense to have the conversation on the bitcoin PR - as they're actively seeking input from LN folks.

I recognize that it seems somewhat unhinged for the person who's always yakking on about channel jamming to be talking about decreasing the number of available slots on channels, but from all the data that we've collected so far it's apparent that we get nowhere near to these limits in practice. Further, the expense of filling up these slots is so trivial for an attacker, that larger values don't really offer us much protection against jamming in practice anyway.

As the bitcoin/bitcoin#29873 https://github.com/bitcoin/bitcoin/pull/29873 proposes

As the https://github.com/bitcoin/bitcoin/pull/29873 was merged 4 days ago, it seems we should change the max-accepted-htlcs to 113 to keep compatibility, other way the commitment transactions should be refused in the near future!

That's not the case, this will only come into play when we upgrade to using commitment transactions that opt in with nVersion=3.

Concept ACK.
There are also good security reasons to have a smaller default and limit HTLC exposure.


MemberNameEqualsClassName false positive for a factory function with implicit return type

The following code:
internal class Foo private constructor() {

    companion object {

        fun foo() = Foo()
    }
}

will fail with MemberNameEqualsClassName rule (MemberNameEqualsClassName - [foo] at ...). This error looks like a false positive, because the documentation says

Factory functions that create an instance of the class are exempt from this rule.

and the offending function does in fact create an instance of the class
Your Environment

Version of detekt used: 1.18

Are you running with Type Resolution enabled? This is a rule with a "mixed behavior" (see https://github.com/detekt/detekt/issues/2994) based on you running with Type Resolution or not.
Specifically the code section that checks the factory method exception requires type resolution.
More on type resolution here: https://detekt.github.io/detekt/type-resolution.html

Yes, that was it, with detektMain (detektTest in my case) the error is not there 🙂
Does running Detekt with type resolution using Gradle incur some performance penalty related to that type resolution? I didn't find any mention in the links provided

Yes, it does. It incurs in a notable performace penalty.

But I think that we should not allow false positives and force the usage of Type Resolution

Are you suggesting that we promote the rule to Type Resolution only?

If there is not an easy way to fix it, yes.

This is still reproducible in v1.19.0-RC2

Thanks for the heads up. I forgot about this one. I just create a PR fixing this. It could introduce new false-negatives. But those are better than false-positives. If you want a the rule to work properly you need to enable type-solving.


Update SettingsFileCodeFixProviderUnitTests to use GetSettings()

Current coverage is 79.39%

Merging #1870 into master will not affect coverage as of fa1f956

@@            master   #1870   diff @@
======================================
  Files          558     558
  Stmts        34783   34781     -2
  Branches      9627    9627
  Methods
======================================
- Hit          27615   27614     -1
- Partial       5625    5626     +1
+ Missed        1543    1541     -2

Review entire Coverage Diff as of fa1f956

Powered by Codecov. Updated on successful CI builds.

:+1:


keb: introduce new operations metrics compass_keb_operation_result

Description
The compass_keb_{operation_type}_result metrics have architectural challenges that make them difficult to consume.

they are difficult to aggregate - they are gauges with values having nontrivial meaning where 0 means failed, 1 means succeeded, 2 means in process ... This makes aggregation of the data difficult. If user queries compass_keb_provisioning_result and gets 7, they don't know easily if that means 7 succeeded SKRs or 3 succeeded and 2 processing. Also given failed means 0, there can be an arbitrary number of failed SKRs for any aggregation query.

they are used for cross-correlation with compass_keb_operations_{operation_type}_failed_total, but totals are based on data from database (persisted) and result are based on data stored in memory (not persisted through restarts). This means the metrics are mismatching and unnecessary alerts get triggered.

This PR proposes a new metric:
compass_keb_operation_result{global_account_id="[ga_id]",instance_id="[i_id]",operation_id="[o_id]",plan_id="[p_id]",state="[state]",type="[o_type]"} [val]

The metric is based on data persisted in the database and the state is represented as a label to allow for metric aggregation and convenient filtering.
Related issue(s)

ptal @ebensom, do you think these metrics would have value? I personally dislike using compass_keb_{operation_type}_result because of the two mentioned points and I think this may be a better replacement.


RC2 Linking to invalid controller/action stops request

Runtime: dnx-coreclr-darwin-x<IP_ADDRESS>-rc2-16128 (also impacts mono version)
Environment: OSX
MVC/Other deps : 6.0.0-rc2-16334 (6.0.0-*)
Previously if you added a @Html.ActionLink("Home", "Index", "Home") where the Controller/Action didnt exist, the link would be rendered empty without error.  With this update any links to invalid actions throws the following error:
fail: Microsoft.AspNet.Diagnostics.DeveloperExceptionPageMiddleware[0]
      An unhandled exception has occurred while executing the request
      System.NullReferenceException: Object reference not set to an instance of an object
        at System.Text.Encodings.Web.TextEncoder.Encode (System.IO.TextWriter output, System.String value) <0x10e5b2380 + 0x00018> in <filename unknown>:0
        at Microsoft.AspNet.Mvc.Rendering.TagBuilder.AppendAttributes (System.IO.TextWriter writer, System.Text.Encodings.Web.HtmlEncoder encoder) <0x10e5d7980 + 0x001a1> in <filename unknown>:0
        at Microsoft.AspNet.Mvc.Rendering.TagBuilder.WriteTo (System.IO.TextWriter writer, System.Text.Encodings.Web.HtmlEncoder encoder) <0x10e5d7580 + 0x00179> in <filename unknown>:0
        at Microsoft.AspNet.Mvc.ViewFeatures.StringCollectionTextWriter+StringCollectionTextWriterContent.WriteTo (System.IO.TextWriter writer, System.Text.Encodings.Web.HtmlEncoder encoder) <0x10e5b6f10 + 0x001c0> in <filename unknown>:0
        at Microsoft.AspNet.Mvc.ViewFeatures.StringCollectionTextWriter.CopyTo (System.IO.TextWriter writer, System.Text.Encodings.Web.HtmlEncoder encoder) <0x10e5c99f0 + 0x001b3> in <filename unknown>:0
        at Microsoft.AspNet.Mvc.ViewFeatures.StringCollectionTextWriter.CopyToAsync (System.IO.TextWriter writer, System.Text.Encodings.Web.HtmlEncoder encoder) <0x10e5c99b0 + 0x0001e> in <filename unknown>:0
        at (wrapper remoting-invoke-with-check) Microsoft.AspNet.Mvc.ViewFeatures.StringCollectionTextWriter:CopyToAsync (System.IO.TextWriter,System.Text.Encodings.Web.HtmlEncoder)
        at Microsoft.AspNet.Mvc.Razor.RazorTextWriter.CopyToAsync (System.IO.TextWriter writer) <0x10e5c9680 + 0x00068> in <filename unknown>:0
        at Microsoft.AspNet.Mvc.Razor.RazorView+<RenderLayoutAsync>d__20.MoveNext () <0x10e512000 + 0x008d7> in <filename unknown>:0
...

This error interupts the page rather than totally fails it, so the browser gets a Net::ERR_INCOMPLETE_CHUNKED_ENCODING (chrome) with a partially rendered page.

The null-ref here is definitely unintended.
As a side-discussion, we're planning to revert the change in behavior for link generation, and allow generating links to things that don't exist.

Moved from https://github.com/aspnet/Razor/issues/606
I just noticed that this markup ...
<form id="contactform" asp-antiforgery="true" asp-action="contact" method="post">

... produces this markup ...
<form id="contactform" method="post" action="">

... which, of course, hoses validation ...

Is that the expected behavior?
@dougbu commented:

@GuardRex this is somewhat expected because we do not currently generate links to non-existent actions. However we're discussing making changes in this area, as @rynowak mentioned in the aspnet/Mvc#3512 issue.

@dougbu Is there a simple work-around to get the page to validate that wouldn't break the processing of the form submission?

@rynowak I made the suggestion to reuse this issue. If you think the two symptoms are unrelated, let's discuss breaking them apart tomorrow.

Is there a simple work-around

@GuardRex for some reason asp-action="contact" isn't resolving. But you haven't provided enough information about the application to understand why. For example are you using attribute or template routing? Does a Contact() action exist in the executing controller? Does your code change any route values?

@dougbu Roasted rat burgers! :rat: :hamburger: You're right. I dorked it. I changed the Controller action several days ago, and thus the action element was empty when I forgot to update asp-action="contact". My bad.

@GuardRex np.
From my perspective, the silent failure is not helpful here. You would have known where to look sooner if either the <form> tag helper threw an Exception (as in @salerth's original post) or the generated action led to a 404 on submission.

@dougbu Thank you for some relief over it. I really, really don't want to waste anyone's time there with brain farts ... "code farts" let's call them.
The submission behavior was understandable ... a good route on the controller [Route("/contact/{d?}")] with a [HttpPost] seemed to mask it pretty good.

BTW If you want to have MVC5's behavior here you can... https://github.com/aspnet/Mvc/blob/dev/test/WebSites/BestEffortLinkGenerationWebSite/Startup.cs
We're going to revert this change sometime in RC2, but until then here's a workaround.

From reading of the above, in an RC2 world, we can still re-enable this option by setting:
options.UseBestEffortLinkGeneration = true;

? (we would prefer pages to error than fail to generate links).

@ctolkien correct. That's what the UseBestEffortLinkGeneration option does.

@ctolkien - we're simplifying the design here, and going to be consistent with MVC5 and previous versions.
If you want to throw when link-generation fails, then you can subclass UrlHelper and do your thing! We considered that, but didn't do it because it can be very disruptive to the way that people are used to authoring MVC.
Just be aware that we're reverting a design change to conventional routes. Conventional routes will soon behave similarly to when UseBestEffortLinkGeneration is always on, we're going to go back to MVC5's behavior.

@rynowak Me thinks this one is Announcement-worthy. If you post to Announcements, may I make a request to show the default behavior by example and the behavior with subclassing by example.

@GuardRex - yes, there will be an example

default behavior by example and the behavior with subclassing by example

I'm not sure what you mean. We're planning to make behavior of link generation compatible with MVC5 and previous versions.
The discussion about subclassing is related to how to handle cases where link generation does not succeed.

@rynowak I just meant to explain the statement ...

If you want to throw when link-generation fails, then you can subclass UrlHelper and do your thing

... by example (i.e., code sample and behavior). It's obvious to folks who have been working for a while in MVC, and I realize to some extent its like "MVC 101" explaining something basic, but it would be helpful to see a short code sample and have an explanation of what "throw when link-generation fails" means (at compile time?) alongside what happens when link generation doesn't fail, i.e., UseBestEffortLinkGeneration is set to false (markup loses the value for asp-action if the controller doesn't exist?).

what happens when link generation doesn't fail, i.e., UseBestEffortLinkGeneration is set to false (markup loses the value for asp-action if the controller doesn't exist?).

Some basics
Link generation is a runtime feature of routing that lets you generate a URL using the routing system. This is the feature that backs Url.Action(...) Html.Form(...) and things like RedirectToRouteResult or CreatedAtActionResult. It's how we avoid hardcoding URLs in controllers and views.
Link generation runs through a list of routes in the route table, and tried each one in sequence to generate a URL. Each individual route has a chance when it is called to decide whether or not to generate a URL based on its own requirements.
If all routes decide not to generate a URL, then link generation 'fails' and routing returns null. This generally means that you get an empty URL in an <a> or something like that. (This has always been the MVC behavior when link generation fails).
The change in behavior
In MVC5, a route like {controller}/{action}/{id?} can generate a URL when you provide it with a value for controller and action (since id is marked as optional).
In MVC6, we tried an experimental feature to make this smarter. Now not only are controller and action required, but they have to match a real honest-to-goodness existing action method in your app in order for the URL to generate. Naturally this makes 'failed' link generation much more common.
The feedback we've gotten has been strongly in favor of the MVC5 behavior, so we're reverting it what we changed. The infrastructure that was required to build the MVC6 behavior was complex and requires some weird API, so we're pulling it out.
This is what the sample for throwing on failed link generation would look like:
public class MyUrlHelper : UrlHelper
{
    protected virtual string GeneratePathFromRoute(string routeName, IDictionary<string, object> values)
    {
        var result = base.GeneratePathFromRoute(routeName, values);
        if (result == null)
        {
             throw new MyException(<your message here>);
        }

        return result;
    }
}

UseBestEffortLinkGeneration will be removed as part of this wave of changes. This was a stopgap compromise to mostly give you MVC5's behavior.

@rynowak Perfect. Sorry for asking you to type out MVC 101 for Newbies! :baby: ... but that's a big help.

This is fixed by 6875ee55d3c8632a92432b4b80b139f293f14804
We'll be removing UseBestEffortLinkGeneration in a future (soon) change.


Merge master branch to prTesting1_201902011305 branch

OPS Build status updates of commit dd9ed95:
:clock10: Preparing: average preparing time is 42 sec(s)

OPS Build status updates of commit dd9ed95:
:clock10: Incremental building: average incremental building time is 14 sec(s)

OPS Build status updates of commit dd9ed95:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details
Dependent Files

split/updateTestCon1.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Update transaction example

Fixed confirmation method call

 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.


Add support for fetching meetings

Hey! :wave:
Not sure if you're maintaining this and accepting changes here? Seem like the original repository has been archived.
This adds support for fetching meetings.

The only change I would make is to replace all comments for interface properties and function bodies with a proper JSDoc string, to improve editor support and make API docs easier to access, both in TS and JS.

I just try to adhere to existing coding style. :see_no_evil:

Yeah that's a perfectly valid reason! :smile:


New release for scala.js

Please could we have a new release, mainly for the new scala.js support for Cats

0.4.0 is now on Sonatype, built for Scala 2.10.5, 2.11.7, and ScalaJS 0.6.4.


View completed sessions

Features

Add view icon in action column in sessions datatable
Route to code page in View Only mode for completed sessions
Disable all editables in View Only mode (including chat, code editor, language mode switch)

Resolves

#138

After both users exit from the session, the session no longer terminates and is still resumable. Can I check if this is intended?

After both users exit from the session, the session no longer terminates and is still resumable. Can I check if this is intended?

I believe it might be a CORS error, from docker testing there does not seem to have such an issue. Could you try testing with compose?


Migrate to xtl's conjunction and disjunction

This requires a new xtl release.

MSVC seems to be having trouble with the variadic templates here.


Recursive reference doesn't lead to correct entry.

[Enter feedback here]
The line "Learn how to use the team templates in the admin console." contains a hyperlink to the same page you're already on. This page does not contain instructions for using team templates in the admin console.
Additionally, the link to this page (the github feedback form) contains a unicode emoji that needs to be edited before this feedback form loads.

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

ID: 24d884cb-c126-b5dc-ff90-1a31aa61bf5b
Version Independent ID: ed5054d7-d679-7fad-fd5d-9cd393644b9d
Content: Get started with Teams templates using Microsoft Graph - Microsoft Teams
Content Source: Teams/get-started-with-teams-templates.md
Service: msteams
GitHub Login: @SerdarSoysal
Microsoft Alias: serdars

@SQuintin  Thank you for submitting feedback and contributing to the docs. We are currently investigating this.

@SQuintin thank you for reaching out. I've just checked the article and it looks like it could have been updated in the interim. Please confirm from your side. Thanks.

It's been updated, but it's still recursive and possibly more confusing
than ever.
This page (
https://docs.microsoft.com/en-us/microsoftteams/get-started-with-teams-templates)
says "You can create your own template in the admin console" and links you
here:
https://docs.microsoft.com/en-us/microsoftteams/get-started-with-teams-templates-in-the-admin-console
This page (
https://docs.microsoft.com/en-us/microsoftteams/get-started-with-teams-templates-in-the-admin-console)
says "Currently you can create a team from a template in Teams or using
Microsoft Graph." and then links you back to the previous page.
Further, both pages contain the same content below the top section, so
they're duplicative, adding to the confusion.
Since the graph page points to the admin center page for "create your own
template in the admin console", one would expect the linked page to
describe the process. That content is nowhere to be found.
On Tue, Sep 29, 2020 at 5:02 AM Reece Peacock<EMAIL_ADDRESS>wrote:

@SQuintin https://github.com/SQuintin thank you for reaching out. I've
just checked the article and it looks like it could have been updated in
the interim. Please confirm from your side. Thanks.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/OfficeDocs-SkypeForBusiness/issues/5749#issuecomment-700656356,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADCFQKKTURCXKWUDDBYXPJ3SIHEETANCNFSM4RFSNHJA
.

@SQuintin thank you for clarifying. I found these articles. Please let me know if I should add the links to this document to help other users - https://techcommunity.microsoft.com/t5/microsoft-teams-blog/create-teams-quickly-with-templates-in-microsoft-teams/ba-p/1394163 and https://docs.microsoft.com/microsoftteams/get-started-with-retail-teams-templates

We appreciate any feedback that improves the content in the Microsoft docs but we haven't had any response from you so we are going to close this issue.
Please feel free to re-open this issue if there is a specific area of the docs that we can improve or make better. Thank you.


feature: Using an xarray coordinate dimension as string for station_id, timestamps for time

Is your feature request related to a problem? Please describe.
Loading an STF netcdf file from disk via xarray, as is and without further processing, leads to the following in memory dataset:

These days, such a dataset would arguably be designed using strings wherever possible for coordinates. In particular slicing through data to retrieve data for a given station can be done with the statement rain.sel( station_id = "123456A") .
Trying to do a similar selection on the data set as loaded, rain.sel(station_id=123456)  would lead to KeyError: "'station_id' is not a valid dimension or coordinate
A similar observation can be done for the time dimension needing to use date/time representation, perhaps even more so than for station_id
Note also that having coordinates that are starting at one (i.e. Fortran indexing) rather than zero (C/Python) is not inconsequential in practice; this is notoriously fertile ground for "off by one" bugs when slicing data for use in modelling.
Describe the solution you'd like
The In-memory representation of STF via xarray has the following coordinates

"time" (pandas.Timestamp or np.datetime64)
station_id (str)
ens_member (int) (note: probably can only be int in python anyway, likely 64 bits. int32 retained on-disk)
lead_time (int)

Additional context
Possible downsides:

What is the performance downside, if any noticeable, when converting the in-memory data for writing to disk with "to_netcdf"
This would likely make using xarray "lazy-loading" capabilities not possible anymore. Does it really matter "these days"?

Other considerations:

"RAM windowed" time series for very large data not fitting in RAM. xarray backed by netcdf anyway does not offer native capabilities for this so far as I know. One would need to use zarr as an xarray backend, or perhaps other options (time series DBs?)

Yeah we could move strings in station_name for sure. The reason we didn't at the time was lack of compatibility with the Fortran netCDF library. For this reason (and for compatibility with older scripts, many of which are still in use), it might be better to move to a new variable name: perhaps station_str or similar.
We also should change 'ens_member' to 'realization', for better CI compatibility.

In memory, time should be represented in a time format, for our forecasting purposes I think the default np.datetime64 for xarray is OK, but it isn’t always OK if you need to deal with records that are >~400 years.
Station_id probably should be a string. There are so many AWRC codes with letters in them that ints don’t make sense.
Agree with James on converting ens_member to realization - could couple this to redefining it to be zero based integer
In memory it would be great to have lead_time as a timedelta reading the associated time units (hours, days etc). Then it would be possible to add it to the time variable to get the valid time of the relevant data.

It would be ideal to preserve lazyloading if possible for the main data variables - time, lead_time, realization, station don't necessarily use large amounds of memory on their own but the main data variables can.

@derob I don't know about making station_id a string. Isn't swift partly predicated on using station_id as integers to construct node-link networks? If anything, station_name would be a good candidate to convert to a string (as was originally intended, but couldn't be done due to Fortran issues), but as I said you may run into backwards compatibility issues.

We tend to use integers for station_id but they are referenced as strings in my understanding... The onboarding python example uses a single subarea model with the of subarea.Subarea

Thank you for your inputs, much appreciated. To be clear, I was not suggesting any change to the STF netCDF convention, only the "python, in memory xarray". Writing a STF-2.0 compatible netCDF file to disk is a non-negotiable feature.
@derob indeed swift2  nodes, links and subareas are all identified with strings, which can also cater for a legacy integer representation of course.

I have been defining station_id as strings, as @derob said some (SILO and BoM) curated stations have chars as part of their unique id.  I have also been using pint_xarray to ensure units are applied to dataarrays.

So loading station_id as strings as @jmp75 has suggested is no problem; saving them as strings in the .nc files, which I think is what Andrew is doing implies a change in spec, might cause issues with backwards compatibility (at least if we keep those variable names). Not necessarily saying I'm against it; this might be the preferable way to go with v3.0 (or whatever) of the spec.

@jbcsiro we are very much on the same wavelength regarding not breaking backward compat STF v2.0 and including across languages.  As an aside a v3.0 specs may be also within the scope of the WMO group @derob mentioned and is a member of?

Very happy to improve the spec for both usebility and CF compatibility. Unfortunately a lot of those conventions are dominated by the meteorological community, who tend to favour spatial coverage over time when saving data (so you tend to get large spatial coverage in files with only a single forecast). Keeping many forecasts in one file is very beneficial for us though: both for storage and ease of verification. Suspect it ultimately may be a losing fight.

@jbcsiro one of the really nice things about xarray, which we should probably think about when developing the package is the ability to automagically read multiple files on disk into a single in-memory object... There are issues, of course, with managing large numbers of small files, but there is probably a balance and maybe single forecast files are ok in the future from an analysis perspective.

That is an interesting topic, when to separate into individual files and went to not separate and persist all associated data variables into one file. Moving one large file about has challenges, but keeping order with separate files is also a difficult.  At the moment I feel safer and happy to take the hit with one large file stored in a central network drive.

That is an interesting topic, when to separate into individual files and went to not separate and persist all associated data variables into one file. Moving one large file about has challenges, but keeping order with separate files is also a difficult. At the moment I feel safer and happy to take the hit with one large file stored in a central network drive.

There are pros and cons of large and small files. I generally prefer large files, but sometimes it is more efficient computationally to generate many small files.  There can be limits on file numbers on some storages which means that many small files aren't a good idea.  zarr 'files' are actually just a folder of many small files that chunk data in a particular way, so there needs to be some careful thought about the most appropriate chunking on disk for zarr.

That is an interesting topic, when to separate into individual files and went to not separate and persist all associated data variables into one file. Moving one large file about has challenges, but keeping order with separate files is also a difficult. At the moment I feel safer and happy to take the hit with one large file stored in a central network drive.

There are pros and cons of large and small files. I generally prefer large files, but sometimes it is more efficient computationally to generate many small files. There can be limits on file numbers on some storages which means that many small files aren't a good idea. zarr 'files' are actually just a folder of many small files that chunk data in a particular way, so there needs to be some careful thought about the most appropriate chunking on disk for zarr.

From ---> https://docs.dask.org/en/stable/array-chunks.html

Chunks should align with your storage, if applicable.

Array data formats are often chunked as well. When loading or saving data, if is useful to have Dask array chunks that are aligned with the chunking of your storage, often an even multiple times larger in each direction

So I don't think you need to have many files in the same dimension as in memory chunks, however it might be better/advantageous.  So if the file number becomes limiting it could be reduced by increasing the file size but keeping in memory the same.

Hydrological forecasts are often produced at the catchment scale, so saving individual forecasts produces too many files relative to file size IMO. When it comes time to move or archive those forecasts this is very annoying, especially when you can just save e.g. a month's worth of forecasts in a single file (assuming you have the spec to do it) and make that stuff a lot easier. This is generally not the case with meteorological forecasts, esp for global models.


[Core] Instructions for dbt-core-bundles to replace brew install

We stopped maintaining Homebrew as a supported installation method for dbt-core and adapters starting with starting in version 1.6.0. More info here:

Installing dbt Core: saying goodbye to brew and hello to "bundles"

So we want to update our docs so that users know what to do instead.
Link to the page(s) on docs.getdbt.com requiring updates
Either remove the link to Homebrew installation here, or add "(deprecated)" or "no longer supported" as of v1.6:
https://docs.getdbt.com/docs/core/installation-overview#install-dbt-core
Create a new installation method for dbt-core-bundles and add these instructions.
Revisit these docs and make updates as-needed:
https://docs.getdbt.com/docs/core/homebrew-install
Tell us more about this update
See more info here: https://github.com/dbt-labs/dbt-core/discussions/8277
Reviewers/Stakeholders/SMEs
Colin and Jerco
Related GitHub issues
https://github.com/dbt-labs/homebrew-dbt/issues/382
Additional information
No response

Closing this as addressed in https://github.com/dbt-labs/docs.getdbt.com/pull/5446 and captured previously in this issue: https://github.com/dbt-labs/docs.getdbt.com/issues/5432
Still investigating whether CLI can still use Homebrew but will open another issue if we need to remove it there.


fix In/NotIn columnRef in RoughSetFilter (cherry-pick-8171)

What problem does this PR solve?
Issue Number: close #8169
Problem Summary:
What is changed and how it works?
Check List
Tests

[ ] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

/run-all-tests

/run-all-tests

/run-all-tests

/rebuild

/build


Switch to npm classnames

Rather than a home-grown function, let's just use the npm package classnames.

or don't, no one cares.


Compiled nodejs for armv7 armv6 and arm64 alpine/linux

Hi, I have created a dockerfile to cross compile nodejs for different architecture.
I have also provided some prebuilt binaries too if you want to add them to pkg-fetch releases binaries:
https://github.com/robertsLando/pkg-binaries

I'm trying to build a binary of my Node.js app on a classic x86_64 computer but for a armv6 target (raspbian raspberry pi zero). How I can use your tool to do that. I can't find anything on your README for that

My tool is used to get pre-compiled nodejs binaries to use with pkg, you should be able to do what you are looking for by checking the code I use to compile it with different archs (using qemu).


Group or filter per content type under Templates

Make it possible to filter or group templates on content type.

@bjuris - any specific implementation details in mind? To do in the same "searchable" table?

@valdisiljuconoks No implementation in mind, I just moved this from the readme so it was written a long time ago, but if I remember correctly we just though it would be useful when troubleshooting a content type that you somehow could see what templates could render it


ETag is no longer shown in the Blob Properties dialog

Storage Explorer Version: 1.13.0
Build Number: 20200430.5
Regression From:  1.12.0
Bug Description
ETag used to be shown in the Blob Properties dialog. It isn't shown in the Blob Properties dialog since 1.13.0
Steps to Reproduce

Open a blob container
Right click on a blob
Choose Properties

Expected Experience
ETag is still shown.
Actual Experience
ETag is not shown.

Duplicate of #2940.