Buffer calls while loading script setup

Hey peeps,
Following your example about NextJS, we had to start adding optional chaining (?) everywhere around the analytics object because there is a timing issue calling the analytics stuff.
https://github.com/segmentio/analytics-next/blob/dcaaae4a5d4678c53b6a48b39b2240d578060cc6/src/browser.ts#L74
It is not clear to me how we should create that window.analytics beforehand, for example, how Google Analytics does it:
(function (window, document, tagName, src, scopeName, a, m) {

  // this whole thing
  window['GoogleAnalyticsObject'] = scopeName;
  window[scopeName] = window[scopeName] || function () {
    (window[scopeName].q = window[scopeName].q || []).push(arguments)
  }, window[scopeName].l = 1 * new Date();

  a = document.createElement(tagName), m = document.getElementsByTagName(tagName)[0];
  a.async = 1;
  a.src = src;
  m.parentNode.insertBefore(a, m)

})(window, document, 'script', 'https://www.google-analytics.com/analytics.js', 'ga');

Would be amazing to add some example about it in terms of how to setup such object to avoid timing issues.

As I was creating the ticket I realized you do the buffering already leaving extra context regardless
For example:
export function useIdentifyAnalytics() {
  const analyticsContext = useSegmentAnalyticsContext();
  return (userId: string, traits: any) => {
    // TODO: Remove `?` from the call.
    // We need to find a way to wait for the analytics to be loaded first. This is a temporary fix. The downside of that
    // is that forcing the user to wait for a spinner or something like for analytics to load is not ideal.
    // Ideally, the 3rd party dependency should buffer the calls and only send them when the analytics is loaded,
    // instead us doing all that logic in our app.
    return analyticsContext.analytics?.identify(userId, traits);
  };

When this hook (or any other ones that we have) triggers, sometimes the script still loading, so there is no object available yet. So there is a timing issue.
Forcing some spinner in our app is less than ideal since it will impact the user experience drastically in an era where we can't afford more than 500ms to 1sec for user attention.

For example, you want to be able to call analytics.track before the library is finished loading?

Yes!

Also @chrisradek we just found an issue where the AdBlockers are blocking Segment, therefore, loading the script failed, therefore, we had an undefined object
import { Analytics, AnalyticsBrowser } from '@segment/analytics-next';
import * as React from 'react';

export type UseSegmentAnalyticsProps = {
  writeKey?: string;
};

export function useSegmentAnalytics(props: UseSegmentAnalyticsProps) {
  const [analytics, setAnalytics] = React.useState<Analytics | undefined>(undefined);

  React.useEffect(() => {
    if (!props.writeKey) {
      return;
    }

    async function loadAnalytics() {
      const [response] = await AnalyticsBrowser.load({ writeKey: props.writeKey });
      setAnalytics(response);
    }

    loadAnalytics();
  }, [props.writeKey]);

  return {
    isReady: !!analytics,
    analytics: analytics,
  };
}

What would be the ideal fallback? Both, the original problem and this problem belong to the same bucket: what happens when analytics hasn't loaded?
Except that they would have two different outcomes I am guessing.
Buffer waiting for the script isn't a problem, but if the script never loaded, then you will keep filling up the memory.
So handling the error side is critical.
Unless I am missing something.

Also, reasons why I created https://github.com/segmentio/analytics-next/issues/310 as well.
I think the integrations with React query could be simpler than it is today, hiding all these issues. More than happy to port the code eventually.

@yordis Let me first address the buffering question.
Here's an update I made to the nextjs example that will use a modified version of the analytics.js snippet that's called in a useEffect hook:
https://github.com/segmentio/analytics-next/compare/example-buffering-nextjs

Snippet:
function analyticsSnippet(): Analytics | undefined {
  if (typeof window === 'undefined') {
    return
  }
  const analytics: any = window.analytics || []
  window.analytics = analytics
  if (!analytics.initialize) {
    if (analytics.invoked) {
      return analytics
    } else {
      analytics.invoked = !0
      analytics.methods = [
        'trackSubmit',
        'trackClick',
        'trackLink',
        'trackForm',
        'pageview',
        'identify',
        'reset',
        'group',
        'track',
        'ready',
        'alias',
        'debug',
        'page',
        'once',
        'off',
        'on',
        'addSourceMiddleware',
        'addIntegrationMiddleware',
        'setAnonymousId',
        'addDestinationMiddleware',
      ]
      analytics.factory = function (e) {
        return function () {
          var t = Array.prototype.slice.call(arguments)
          t.unshift(e)
          analytics.push(t)
          return analytics
        }
      }
      for (var e = 0; e < analytics.methods.length; e++) {
        var key = analytics.methods[e]
        analytics[key] = analytics.factory(key)
      }
    }
  }

  return analytics
}

useEffect:
useEffect(() => {
  setAnalytics(analyticsSnippet())
}, [])

Note that I had to get rid of the ctx.flush() calls because the buffered versions of the API all return undefined. However, it wasn't necessary to call ctx.flush() in the example anyway.
Now with regards to adblockers - do you know if they blocked the call to get /settings from the segment CDN, or if it was a specific destination that was blocked?

@chrisradek this is the only thing I have in hand

That looks like getting the source settings is getting blocked. Just to confirm, AnalyticsBrowser.load() is throwing an error when segment is blocked?
So there are a couple options to handle the ad-blocker case.

Set up a custom domain proxy so it appears that analytics.js is being loaded from your own domain.
Update the analytics.js snippet so that you can toggle buffering off. This would be for the case where you know AnalyticsBrowser has failed to load and you just want to make sure you aren't causing memory usage to increase.

I'd be happy to include the 2nd option in my example above if that'd be helpful.

Here's an update I made to the nextjs example that will use a modified version of the analytics.js snippet that's called in a useEffect hook:

I have a suggestion here, move the code from the useEffect to the callback of useState of the analytics instead.
Do you mind tagging me once you create the PR?

That looks like getting the source settings is getting blocked. Just to confirm, AnalyticsBrowser.load() is throwing an error when segment is blocked?

Probably, the reason I say that is because I didn't handle the error case (reasons why I created the ticket here since they are edge cases that I didn't want to mess it up further)
Here is the full setup so far
import { Analytics } from '@segment/analytics-next';

declare global {
  interface Window {
    analytics: Analytics;
  }
}

import { Analytics, AnalyticsBrowser } from '@segment/analytics-next';
import * as React from 'react';

export type UseSegmentAnalyticsProps = {
  writeKey?: string;
};

export function useSegmentAnalytics(props: UseSegmentAnalyticsProps) {
  const [analytics, setAnalytics] = React.useState<Analytics | undefined>(analyticsSnippet);

  React.useEffect(() => {
    if (!props.writeKey) {
      return;
    }

    async function loadAnalytics() {
      const [response] = await AnalyticsBrowser.load({ writeKey: props.writeKey });
      setAnalytics(response);
    }

    loadAnalytics();
  }, [props.writeKey]);

  return {
    isReady: !!analytics,
    analytics: analytics,
  };
}

function analyticsSnippet(): Analytics | undefined {
  if (typeof window === 'undefined') {
    return;
  }

  const analytics: any = window.analytics || [];
  window.analytics = analytics;
  if (!analytics.initialize) {
    if (analytics.invoked) {
      return analytics;
    } else {
      analytics.invoked = !0;
      analytics.methods = [
        'trackSubmit',
        'trackClick',
        'trackLink',
        'trackForm',
        'pageview',
        'identify',
        'reset',
        'group',
        'track',
        'ready',
        'alias',
        'debug',
        'page',
        'once',
        'off',
        'on',
        'addSourceMiddleware',
        'addIntegrationMiddleware',
        'setAnonymousId',
        'addDestinationMiddleware',
      ];
      analytics.factory = function (e) {
        return function () {
          var t = Array.prototype.slice.call(arguments);
          t.unshift(e);
          analytics.push(t);
          return analytics;
        };
      };
      for (var e = 0; e < analytics.methods.length; e++) {
        var key = analytics.methods[e];
        analytics[key] = analytics.factory(key);
      }
    }
  }

  return analytics;
}

btw related to this, https://github.com/segmentio/analytics-next/issues/310 since the intention is to remove these setups for React land even futher.

P.S: I changed a bit the snippet, will leave some comments in the PR

Before I forget,
The code-snippet is definitely optimized for most browsers out there, but they are an easier way to accomplish the same task, and even potentially save bytecode since you don't need to hardcore a list of strings, instead, use Proxy among other things.
Recommendation:
Have multiple versions of the code-snippet, one of the versions could take advantage of the latest version of JS and let the transpiler optimize for older ones based on the app configuration.

Thanks @yordis for the snippet. I've adapted it a bit to work outside React:
import { Analytics } from '@segment/analytics-next'

declare global {
  interface Window {
    analytics: AnalyticsBuffered | Analytics
  }
}

import { Analytics, AnalyticsBrowser } from '@segment/analytics-next'

// Borrowed from https://github.com/ts-essentials/ts-essentials
type ElementOf<T extends readonly any[]> = T extends ReadonlyArray<infer ET> ? ET : never

type StubbedMethodName = ElementOf<typeof analyticsStubbedMethods>

type AnalyticsStubbedMethods = {
  [K in StubbedMethodName]: (...args: Parameters<Analytics[K]>) => void
}

interface AnalyticsBuffered extends Array<[keyof AnalyticsStubbedMethods, ...any]>, AnalyticsStubbedMethods {
  /** Flag to tell analytics to stop adding things to the buffer in the event
   * that the library failed to load. */
  _loadFailed?: boolean
  /** Flag to tell if we have initialized the buffered version of Analytics */
  _invoked?: boolean
}

const analyticsStubbedMethods = [
  'addDestinationMiddleware',
  'addIntegrationMiddleware',
  'addSourceMiddleware',
  'alias',
  'debug',
  'group',
  'identify',
  'off',
  'on',
  'once',
  'page',
  'pageview',
  'ready',
  'reset',
  'setAnonymousId',
  'track',
  'trackClick',
  'trackForm',
  'trackLink',
  'trackSubmit'
] as const

/**
 * Factory function to generate a queued version of the {Analytics} class.
 * This allows us to dispatch and track events before the analytics JS has
 * finished downloading from the CDN.
 * @see https://github.com/segmentio/analytics-next/issues/390
 */
function setupAnalytics(): AnalyticsBuffered | Analytics {
  // Stub out window if we are in SSR land
  const _window = typeof window !== 'undefined' ? window : ({} as Window)

  const analytics = _window.analytics ?? []
  _window.analytics = analytics

  // This is how we tell if we have the real Analytics class after it's loaded
  if ('initialize' in analytics) {
    return analytics
  }

  if (analytics._invoked === true) {
    return analytics
  }

  analytics._loadFailed = false
  analytics._invoked = true

  const factory = (methodName: StubbedMethodName) => (...args: any[]) => {
    if (analytics._loadFailed !== true) {
      analytics.push([methodName, ...args])
    }
    return analytics
  }

  for (const methodName of analyticsStubbedMethods) {
    analytics[methodName] = factory(methodName)
  }

  return analytics
}

/**
 * Class that wraps the Segment JS node package that handles queuing tracking
 * calls before the library has finished loading from the CDN.
 */
class Segment {
  private _analytics = setupAnalytics()

  get analytics(): AnalyticsBuffered | Analytics {
    return this._analytics
  }

  load(...args: Parameters<typeof AnalyticsBrowser.load>): void {
    AnalyticsBrowser.load(...args)
      .then(([response]) => {
        this._analytics = response
      })
      .catch(error => {
        console.error('Segment Analytics Load Failed', error)

        // if we failed to load, then we need to tell the buffer to stop
        // appending things to it, otherwise this will leak memory.
        if (!('initialize' in this._analytics)) {
          this._analytics._loadFailed = true
        }
      })
  }
}

export default new Segment()

@yordis added in https://github.com/segmentio/analytics-next/pull/436/files

Released in https://github.com/segmentio/analytics-next/releases/tag/v1.38.0

Thanks @yordis for the snippet. I've adapted it a bit to work outside React:
import { Analytics } from '@segment/analytics-next'

declare global {
  interface Window {
    analytics: AnalyticsBuffered | Analytics
  }
}

import { Analytics, AnalyticsBrowser } from '@segment/analytics-next'

// Borrowed from https://github.com/ts-essentials/ts-essentials
type ElementOf<T extends readonly any[]> = T extends ReadonlyArray<infer ET> ? ET : never

type StubbedMethodName = ElementOf<typeof analyticsStubbedMethods>

type AnalyticsStubbedMethods = {
 [K in StubbedMethodName]: (...args: Parameters<Analytics[K]>) => void
}

interface AnalyticsBuffered extends Array<[keyof AnalyticsStubbedMethods, ...any]>, AnalyticsStubbedMethods {
 /** Flag to tell analytics to stop adding things to the buffer in the event
  * that the library failed to load. */
 _loadFailed?: boolean
 /** Flag to tell if we have initialized the buffered version of Analytics */
 _invoked?: boolean
}

const analyticsStubbedMethods = [
 'addDestinationMiddleware',
 'addIntegrationMiddleware',
 'addSourceMiddleware',
 'alias',
 'debug',
 'group',
 'identify',
 'off',
 'on',
 'once',
 'page',
 'pageview',
 'ready',
 'reset',
 'setAnonymousId',
 'track',
 'trackClick',
 'trackForm',
 'trackLink',
 'trackSubmit'
] as const

/**
* Factory function to generate a queued version of the {Analytics} class.
* This allows us to dispatch and track events before the analytics JS has
* finished downloading from the CDN.
* @see https://github.com/segmentio/analytics-next/issues/390
*/
function setupAnalytics(): AnalyticsBuffered | Analytics {
 // Stub out window if we are in SSR land
 const _window = typeof window !== 'undefined' ? window : ({} as Window)

 const analytics = _window.analytics ?? []
 _window.analytics = analytics

 // This is how we tell if we have the real Analytics class after it's loaded
 if ('initialize' in analytics) {
   return analytics
 }

 if (analytics._invoked === true) {
   return analytics
 }

 analytics._loadFailed = false
 analytics._invoked = true

 const factory = (methodName: StubbedMethodName) => (...args: any[]) => {
   if (analytics._loadFailed !== true) {
     analytics.push([methodName, ...args])
   }
   return analytics
 }

 for (const methodName of analyticsStubbedMethods) {
   analytics[methodName] = factory(methodName)
 }

 return analytics
}

/**
* Class that wraps the Segment JS node package that handles queuing tracking
* calls before the library has finished loading from the CDN.
*/
class Segment {
 private _analytics = setupAnalytics()

 get analytics(): AnalyticsBuffered | Analytics {
   return this._analytics
 }

 load(...args: Parameters<typeof AnalyticsBrowser.load>): void {
   AnalyticsBrowser.load(...args)
     .then(([response]) => {
       this._analytics = response
     })
     .catch(error => {
       console.error('Segment Analytics Load Failed', error)

       // if we failed to load, then we need to tell the buffer to stop
       // appending things to it, otherwise this will leak memory.
       if ('_loadFailed' in this._analytics) {
         this._analytics._loadFailed = true
       }
     })
 }
}

export default new Segment()

@yordis @keegan-lillo  -- since we have supported buffering analytics for over a year, we are dropping support for reading from the window.analytics version if you're using npm.


Feature/on line resources

Coverage increased (+0.05%) to 96.62% when pulling be28aa790597d72ad28dafa267aa7b41703ed634 on feature/on_line_resources into 7f0ff7597203e29d6aa334c3c93453e084480a0c on development.

Coverage increased (+0.05%) to 96.62% when pulling be28aa790597d72ad28dafa267aa7b41703ed634 on feature/on_line_resources into 7f0ff7597203e29d6aa334c3c93453e084480a0c on development.


LIMIT clause not pushed to clickhouse?

Hi Folks,
Postgres: 12
clickhouse_fdw: 1.3
Clickhouse: <IP_ADDRESS>
My Clickhouse connection is defined:
create server clickhouse_svr
	foreign data wrapper clickhouse_fdw	options (dbname '_app', host '_clickhouse');

I have build clickhouse_fdw from github (branch master, reports as 1.3 version in postgres)
When I execute simple query on foreign data table like
SELECT * FROM rfb_radio_meas LIMIT 10;
I see that on clickhouse side system.process  reports query without "LIMIT" clause so full table read is performed.
Is it desired approach or there's a bug on my side?

Have the same problem.
And my postgresql crush on such requests


Is there an option to automatically include created/updated datetime fields on generated types?

I looked through the command line options and I didn't see this feature, is this something that is implemented or that you plan to implement? If not, would you consider accepting a pull request with this functionality?

I'm always open to pull requests, assuming that the code fits well into the existing codebase.
For the sake of simplicity, I'm assuming it was a typo and you meant 'datetime' fields.
There was another issue opened for this, basically concerning any database managed fields (for instance, a 'modification' timestamp or some such that gets automatically set (ie, via an update trigger, etc).
I'm not opposed to code for that, the problem is that there is no single general purpose way -- at least, not that I can think of -- that solves every use case/problem. ORMs usually tackle this by some sort of 'magic' -- meaning that they inspect the fields and then special logic is applied for those tables/fields. For instance, perhaps a mod_date field is ignored on Save/Update. The problem with this approach is that it forces specific naming conventions that 1) may not have been followed previously, and it is too difficult to update the existing schema to use it 2) may not be consistently named or have special rules for the underlying schema 3) in the future, the person adding tables/fields may prefer a different naming convention, 4) additionally, because xo supports multiple databases there are problems between the databases that would make this inconsistent between, for instance, MySQL, Oracle, et al.
In short, there is no pretty/elegant solution -- again, not that I can think of.
The way that I would suggest solving this is to copy the base templates, modify the logic to match your specific schema / use case, and then pass to xo the user supplied template path (--template-path):
cd /path/to/project

# copy templates
cp $GOPATH/src/github.com/knq/xo/templates/postgres.*.tpl /path/to/project/templates

# edit templates ...
vi templates/*.tpl

# pass to xo
mkdir models
xo pgsql://user:pass@host/dbname -o models --template-path ./templates

For instance, you could then introduce almost any logic you wanted in the templates that match your database schema:
{{if $cond}}/* some go code */{{end}}

If you have a suggestion / idea for a general way that this could be introduced into the xo codebase, without forcing users to adopt a specific schema design style, I'm very much open to hear it. If you can convince me it's a good idea, I'll even implement it!
In a couple of projects where we have decided to use xo, this in fact this is what we have done (ie, made our own base templates) -- because we didn't think what we were writing in the templates was a general purpose solution for the world at large (specifically, we have database managed fields such as modification times, etc).

I appreciate your response. I considered using my own set of templates, but what I was really looking for was a flag that could be set to make sure datetime fields matching my naming conventions to be set appropriately. I forked the repo and spent the last couple of hours shimming this in for mysql. I'm not going to submit a pull request at this time as the solution is not general, but for my purposes it basically looks at your Fields for a Type, and if it finds a datetime field named Created or Modified, it'll set Created on insert, and Modified each time the record is updated. This functionality is activated with the flag --autodates. I'll need to revisit it when I'm a little fresher.

I spent some time generalizing my solution this morning, and I think I see a way to include it without being too opinionated and as an entirely opt-in feature.
Right now, there are 3 new flags available
  --autodates            enables automatic population of DateTime fields named created and modified (mysql only)
  --modified MODIFIED    field name to treat as the modification time (autodates) [default: modified]
  --created CREATED      field name to treat as the creation time (autodates) [default: created]

...then, in internal/templates.go, in ExecuteTemplate, I modified the if statement used determine the template prefix as follows:
if a.LoaderType == "oci8" || a.LoaderType == "ora" {
		// force oracle for oci8 since the oracle driver doesn't recognize
		// 'oracle' as valid protocol
		loaderType = "oracle."
	} else {
		// For now, AutoDates only supports type templates in mysql
		// enable for other templates/schemes by changing this conditional
		if a.LoaderType == "mysql" && a.AutoDates && tt.String() == "type"{
			loaderType = "autodate." + LoaderType + "."
		} else {
			loaderType = a.LoaderType + "."
		}
	}

I added some helper functions in internal/funcs.go which are used in place of 'fieldnames' in my "autodates"-prefixed templates. This also allows someone who has their own template library to include templates supporting the autodate feature by supplying "autodate"-prefixed templates.
This i not a 100% solution, but it addresses a decent amount of use cases, I think.
TODO:

define a function that will check the schema for compatibility with autodate, and use this in place of explicit conditional, as well as to warn the user and deactivate the autodate flag on unsupported schemas
add support for more database/type combinations


pip modules not finding the new name "catalystwan"

Summary
pip installation succeeds with the older name "vmngclient" but fails with "catalystwan"
Logs and external information
python3.8 -m pip install catalystwan
ERROR: Could not find a version that satisfies the requirement catalystwan (from versions: none)
ERROR: No matching distribution found for catalystwan
Reproduction script
python -m pip install catalystwan
On what platform(s) does it occur?
macOS
Issue Severity
Medium: There is a workaround

This issue was migrated from an old repository: https://github.com/CiscoDevNet/catalystwan/issues/455


[Request] Single Channel Selection without Drag and Drop

Describe the bug
It's a bit more of a platform limitation. If viewing the website on a console (Xbox One X with Chromium Edge), the browser does not support drag and drop events, even with a mouse connected. As a result, it's not possible to start playback.
Expected behavior/Feature Request
If no streams are currently selected in the layout, a compromise would be to automatically add the first stream that is clicked on, without having to drag and drop it into the grid. If desired, this could be kept as an option like "Console" behind the Stream Type selector.
Desktop (please complete the following information):

OS: Xbox One X on March 9 2022 update (10.0.22000.3832)
Browser: Edge (Xbox)
Version: 97.0.1072.91

F1TV Account (please complete the following information):

Subscription Type: Pro
Country: Canada

I have made a working example of adding a fullscreen button, which clears the layout and add the corresponding stream occupying the full grid in beta branch of my fork.
https://github.com/iebb/F1-Web-Viewer/tree/beta


fix(deps): update module dagger.io/dagger to v0.13.1

This PR contains the following updates:

Package
Type
Update
Change

dagger.io/dagger
require
patch
v0.13.0 -> v0.13.1

Release Notes

dagger/dagger-go-sdk (dagger.io/dagger)
v0.13.1
Compare Source
This SDK uses 🚙 Engine + 🚗 CLI version v0.13.1. See what changed in that release.
🐹<EMAIL_ADDRESS>Dependencies

Bump Engine to v0.13.1 by @sipsma in https://github.com/dagger/dagger/pull/8488

What to do next

Read the documentation
Join our Discord server
Follow us on Twitter

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

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

This PR has been generated by Renovate Bot.

ℹ Artifact update notice
File name: build/go.mod
In order to perform the update(s) described in the table above, Renovate ran the go get command, which resulted in the following additional change(s):

11 additional dependencies were updated

Details:

Package
Change

github.com/adrg/xdg
v0.4.0 -> v0.5.0

github.com/go-logr/logr
v1.4.1 -> v1.4.2

github.com/grpc-ecosystem/grpc-gateway/v2
v2.20.0 -> v2.22.0

golang.org/x/net
v0.26.0 -> v0.29.0

golang.org/x/sync
v0.7.0 -> v0.8.0

golang.org/x/sys
v0.21.0 -> v0.25.0

golang.org/x/text
v0.16.0 -> v0.18.0

google.golang.org/genproto/googleapis/api
v0.0.0-20240520151616-dc85e6b867a5 -> v0.0.0-20240903143218-8af14fe29dc1

google.golang.org/genproto/googleapis/rpc
v0.0.0-20240515191416-fc5f0ca64291 -> v0.0.0-20240903143218-8af14fe29dc1

google.golang.org/grpc
v1.64.0 -> v1.66.1

google.golang.org/protobuf
v1.34.1 -> v1.34.2


Backing up production data.

Hey,
Just wanting to know what is recommend the best way to export/backup the data that has been placed into netbox system?
The wiki and docs doesn't really talk about it.
thanks.

Because the data is stored in PostgreSQL, the best thing to do is become familiar with standard PostgreSQL backup and restore procedures. As for exports, that could be implemented as a CSV download link from Netbox.

As @eronlloyd said, a simple PostgreSQL dump will do it. For example:
sudo -u postgres pg_dump netbox > netbox.sql

To restore the data to an empty database:
sudo -u postgres psql netbox < netbox.sql

Hi,
I am trying to migrate netbox but I am failing at the restoring part.
I ran the command "sudo -u postgres psql netbox < netbox.sql" for restoring and I am getting the following error. I think it has to do with some permissions but not sure. I am not much familiar with postgres db, docker etc. but somehow I was able to get netbox running.
Thanks.
After I run the command I am getting the following error
qsudo -u postgres psql netbox < db_dump_2018-12-03.sql
could not change directory to "/root/netbox-docker"
SET
SET
ERROR:  unrecognized configuration parameter "idle_in_transaction_session_timeout"
SET
SET
SET
SET
ERROR:  unrecognized configuration parameter "row_security"
S

In case it's helpful, this is the bash script I'm using to push database exports to Dropbox. It's smart enough to compare the checksum against the last backup and only save & push dumps that are changed from the last one.
I cloned Dropbox-Uploader to /opt/Dropbox-Uploader and followed his installation steps.
Then I created this file in the home directory of the postgres user (var/lib/postgresql/backup.sh)
#!/bin/bash

time=$(date +%Y%m%d-%H-%M-%S)
filename=/tmp/netbox-backups/netbox-$time.sql
pathtochecksum=/tmp/netbox-backups/latest.md5

echo "Running Netbox backup at $time"

# backup the database
/usr/bin/pg_dump netbox > $filename

# generate a checksum of the backup
md5=($(md5sum $filename))

# compare against last checksum
lastmd5="`cat $pathtochecksum`"
if [ "$md5" = "$lastmd5" ]; then
        echo "Backups match, removing this instance"
        rm $filename
else
        echo "New checksum, pushing to Dropbox"
        /opt/Dropbox-Uploader/dropbox_uploader.sh upload /tmp/netbox-backups/netbox-$time.sql .
        echo "$md5" > $pathtochecksum
fi

To automate it, I switched over to the postgres user (su - postgres) and added this to its crontab (crontab -e)
* * * * * /var/lib/postgresql/backup.sh >> /tmp/netbox-backup/backup.log 2>&1

Per @mchlumsky, this doesn't include the media or reports directories and my script doesn't include those.


Extension<EMAIL_ADDRESS>does not exist

~/gnome-network-stats on main ❯ chmod +x commands.sh                                                                                at 23:51:36
~/gnome-network-stats on main !1 ❯ ./commands.sh build                                                                                at 23:51:53
~/gnome-network-stats on main !1 ❯ ./commands.sh install                                                                                at 23:52:11
Extension<EMAIL_ADDRESS>does not exist
~/gnome-network-stats on main !1 ❯

Any ideas? Pop_OS! 21.0

@pythonInRelay
Yes, this is known issue. try this.
https://github.com/noroadsleft000/gnome-network-stats#known-issues

No any recent activity on this. closing it.


Instagram phishlet can't accept cookie

Can't accept cookie on instagram phishlet how can I solve this?
I got this in console "Uncaught w {name: 'AjaxError', message: '', stack: 'Error\n    at new w (https://www.XXXXXXX.xy/static/b…es6/ConsumerLibCommons.js/9df39bad3bb0.js:64:2129', framesToPop: 1, networkError: '', …}"

All issues can be fixed.... It's cuased due to update on the targeted end..... You can reach how to the developer on icq @mrgretzky

What!!?  he just helped me out with my phishlets thought I let you guys know.... What ever you say dude Idgaf

I have this problem tho and cant fix it !

...any solution for that yet? Same problem here, can't accept cookies. Would love to correct it by myself, but don't know where to start.

@rdtm443 same god damn, tell me you found the solution :,(


In multiselect, a highlighted option gets selected if you click on another option

Steps to reproduce:

Have a multi select dropdown
Click on field
Use down arrow to highlight first option
Now, while the first option is highlighted, click on a different option. Both the highlighted option as well as the one you clicked will get selected.

This can be seen in your own example: https://developer.snapappointments.com/bootstrap-select/examples/#multiple-select-boxes

Duplicate of #2101.


XPC-18175 Update telemetry 2.0 json validation schema in xconf (java)

updated telemetry schema

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: mdolina:x: Maksym DolinaMaksym Dolina seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Update to nodejs 20

Updates Node.js version to v20 as the previous version is out of support.
Applies again changes from #206 and also updates ncc version, which fixes the build error.

@dorny can you create a major release per this PR? Thanks!

@dorny can you create a major release per this PR? Thanks!

Is there a user-facing breaking change here? Seems not.


Collector: Basic Implementation

Tracking the progress of implementing the Collector implementation.

[x] Core class definitions
[x] Interfaces and implementations to store and retrieve data in local file store
[x] Core algorithm for running collector algorithms in the proper order

This is nearing completion, the main thing remaining to ensure that this is complete is implementing test cases to improve the code coverage for these features.  The complexity of defining the algorithms has been the main impediment.


Doesn't clean submodules before creating branch

Currently, when the action is checked out, it checks out from the base directory which may include sub modules that are not in the new_branch_ref branch and it does not clean that history. This creates issues onwards.

Thank you for opening the issue @daquinteroflex 🚀
I may not be able to correct this right away through 😨
I observed in you commentary on the flexcompute/tidy3d repository that you could eventually "sit down and fix the action for our intentions". I don't know how urgent it is, but feel free to contribute to the action (even if not for this issue). The more contributors, the better! 😄


Attendance

I would like to reqest for clarification  on whether the workshop is an onsite or online type of workshop.

This will be onsite, in-person attendance.

Thank you and well noted
On Wed, 8 May 2024, 12:52 Caleb Kibet, @.***> wrote:

This will be onsite, in-person attendance.
—
Reply to this email directly, view it on GitHub
https://github.com/kipkurui/drug_design_workshop/issues/1#issuecomment-2100199935,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BDJQQ2DWNWV2OHTTUL7CDEDZBHYUFAVCNFSM6AAAAABHMSVXDWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMBQGE4TSOJTGU
.
You are receiving this because you authored the thread.Message ID:
@.***>


Roll engine e54bc4ea1832..e3687f70c7ec (40 commits)

https://github.com/flutter/engine/compare/e54bc4ea1832...e3687f70c7ec
git log e54bc4ea1832..e3687f70c7ec --date=short --no-merges --format='%%ad %%ae %%s'
2018-08-15<EMAIL_ADDRESS>Roll src/third_party/skia 916c498c04fa..31a0944bb30b (3 commits) (flutter/engine#6025)
2018-08-15<EMAIL_ADDRESS>Switch all embedders to use platform_strong.dill instead of platform.dill (the flutter_tester binary already does this) (flutter/engine#6024)
2018-08-15<EMAIL_ADDRESS>Roll src/third_party/skia 49bb9c17d713..916c498c04fa (1 commits) (flutter/engine#6023)
2018-08-15<EMAIL_ADDRESS>Roll src/third_party/skia 572eee09ef71..49bb9c17d713 (1 commits) (flutter/engine#6022)
2018-08-14<EMAIL_ADDRESS>Revert "Log Tonic errors with FML_LOG" (flutter/engine#6021)
2018-08-14<EMAIL_ADDRESS>Fix Android Vulkan builds to account for resource context management API updates. (flutter/engine#6020)
2018-08-14<EMAIL_ADDRESS>Roll src/third_party/skia 0d4a18321160..572eee09ef71 (3 commits) (flutter/engine#6019)
2018-08-14<EMAIL_ADDRESS>Log Tonic errors with FML_LOG (flutter/engine#6015)
2018-08-14<EMAIL_ADDRESS>Roll src/third_party/skia cdbb076bf577..0d4a18321160 (5 commits) (flutter/engine#6016)
2018-08-14<EMAIL_ADDRESS>Detach the resource context before shutting down the IO thread (flutter/engine#6009)
2018-08-14<EMAIL_ADDRESS>Roll src/third_party/skia 32c7d4dfcdca..cdbb076bf577 (5 commits) (flutter/engine#6014)
2018-08-15<EMAIL_ADDRESS>Add NSNull check in setSystemChromeSystemUIOverlayStyle (flutter/engine#6011)
2018-08-14<EMAIL_ADDRESS>Don't require FLTLibraryPath and FLTAssetsPath from the main NSBundle (flutter/engine#5986)
2018-08-14<EMAIL_ADDRESS>Roll src/third_party/skia d4322a8630bc..32c7d4dfcdca (2 commits) (flutter/engine#6013)
2018-08-14<EMAIL_ADDRESS>Widen sdk version constraint of package:{flutter_services,sky_engine,sky_services} to allow ^2.0.0 (flutter/engine#6012)
2018-08-13<EMAIL_ADDRESS>Roll src/third_party/skia 1b95ef9f9912..d4322a8630bc (1 commits) (flutter/engine#6010)
2018-08-13<EMAIL_ADDRESS>Do not log unwind errors during isolate shutdown (flutter/engine#6008)
2018-08-13<EMAIL_ADDRESS>Remove unused argument on Animator, Engine and PlatformView delegates. (flutter/engine#6007)
2018-08-13<EMAIL_ADDRESS>Roll src/third_party/skia beac4195ccb7..1b95ef9f9912 (1 commits) (flutter/engine#6006)
2018-08-13<EMAIL_ADDRESS>Roll src/third_party/skia b35c655378ee..beac4195ccb7 (6 commits) (flutter/engine#6005)
2018-08-13<EMAIL_ADDRESS>Roll src/third_party/skia 87a737292804..b35c655378ee (1 commits) (flutter/engine#6004)
2018-08-13<EMAIL_ADDRESS>Roll src/third_party/skia f1a25c06cd15..87a737292804 (1 commits) (flutter/engine#6003)
2018-08-12<EMAIL_ADDRESS>Roll src/third_party/skia 02d174687cc9..f1a25c06cd15 (1 commits) (flutter/engine#6002)
2018-08-11<EMAIL_ADDRESS>Roll src/third_party/skia 5fb1b7e0ffe1..02d174687cc9 (1 commits) (flutter/engine#6001)
2018-08-10<EMAIL_ADDRESS>Roll src/third_party/skia 609fbe34de01..5fb1b7e0ffe1 (3 commits) (flutter/engine#6000)
2018-08-10<EMAIL_ADDRESS>Make 'gn --debug' and 'gn --debug --dynamic' identical. (flutter/engine#5999)
2018-08-10<EMAIL_ADDRESS>Enable VK_KHR_get_physical_device_properties2 (flutter/engine#5982)
2018-08-10<EMAIL_ADDRESS>Add VK_ERROR_FRAGMENTATION_EXT (flutter/engine#5981)
2018-08-10<EMAIL_ADDRESS>Roll src/third_party/skia a9660ec89bc7..609fbe34de01 (7 commits) (flutter/engine#5998)
2018-08-10<EMAIL_ADDRESS>Check the kernel header magic to determine if a mapping may be a valid kernel blob. (flutter/engine#5997)
2018-08-10<EMAIL_ADDRESS>Add a delay to Animator::BeginFrame's NotifyIdle call (flutter/engine#5972)
2018-08-10<EMAIL_ADDRESS>Fix codepush breakage caused by #5954. (flutter/engine#5996)
2018-08-10<EMAIL_ADDRESS>Cast MotionEvent timestamps to Number. (flutter/engine#5994)
2018-08-10<EMAIL_ADDRESS>Roll src/third_party/skia 6ed63968a391..a9660ec89bc7 (14 commits) (flutter/engine#5993)
2018-08-10<EMAIL_ADDRESS>Reference platform_strong.dill, not platform.dill (flutter/engine#5992)
2018-08-10<EMAIL_ADDRESS>Update to FreeType 2.9.1 (flutter/engine#5991)
2018-08-10<EMAIL_ADDRESS>Roll src/third_party/skia 5b5d84cc1f37..6ed63968a391 (4 commits) (flutter/engine#5989)
2018-08-10<EMAIL_ADDRESS>Roll src/third_party/skia 0d5d0659a684..5b5d84cc1f37 (39 commits) (flutter/engine#5988)
2018-08-10<EMAIL_ADDRESS>Roll Dart to version be6309690fd60284a87f3258a740c7c30efb1092 (flutter/engine#5987)
2018-08-09<EMAIL_ADDRESS>Roll Dart to version 1be785ae2ddb1754a184cd638ab719e94d86b4e9 (flutter/engine#5985)
The AutoRoll server is located here: https://flutter-engine-flutter-roll.skia.org
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

@rmistry @liyuqian : New roll has been created by https://flutter-engine-flutter-roll.skia.org

Trybots failed. These were the failed builds: https://cirrus-ci.com/task/5029808572465152 , https://cirrus-ci.com/task/5135361688731648 , https://cirrus-ci.com/task/5698311642152960 , https://cirrus-ci.com/task/6437183456018432 , https://cirrus-ci.com/task/6155708479307776 , https://cirrus-ci.com/task/5592758525886464

Commit queue failed; closing this roll.


Storage Firewalls are not supported with Bring your own storage

A note should be added that storage firewalls will break the bring your own storage functionality.

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

ID: cae64682-9fd6-28e0-4c60-a003cc06f92c
Version Independent ID: fa1d2de6-c27d-f750-8f35-94c379708000
Content: Serve content from Azure Storage on Linux - App Service
Content Source: articles/app-service/containers/how-to-serve-content-from-azure-storage.md
Service: app-service
GitHub Login: @msangapu
Microsoft Alias: msangapu-msft

Thanks for the feedback! I have assigned the issue to the content author to investigate further and update the document as appropriate.

The document is really useful or maybe out of date. I'm not able to access the file share after mount to Azure Web App Container.

@baoduy This is for storage firewalls. Can you provide more details in a new issue?

@RyanHill-MSFT were you able to confirm the original problem?
@jcbrooks92 What do you recommend we add to the doc?

PR: https://github.com/MicrosoftDocs/azure-docs-pr/pull/80918
#please-close

Will there by any risk or considered a security flaw if we can't apply firewall or VNET to the storage?
I thought that if we can make VNET between storage and app service to restrict access from the internet, it would be safer.
To be precise, if firewall is not supported for storage mounting, does it mean we have to set "Allow access from all networks" under "Firewall and virtual networks" for that storage? Thanks.

For the time being that's correct. In short web app IPs are not in the trusted Azure list of IPs. A feedback request for this feature can be created. The product teams prioritize the requests based off of feedback from these forums.
https://feedback.azure.com/forums/34192--general-feedback?query=Storage firewall


Barcode Input

Change barcode scanner camera to autofocus text input

Yes this is working. Slight modification:

The cursor should be left-justified.
I need something else that I should have explained: Can we prevent the cursor being moved from the cursor except maybe if the user wants to click on Login?

Thanks @kuriakinzeng , I'have updated the cursor to left-justified. And add script to prevent cursor move


Add safety asserts for mc assembly callers

put, prep, and avg now check bounds and width/height before calling
assembly functions.

Does this have any measurable impact on performance? I'm guessing it should be minimal, but these functions are called quite often so I'd like to confirm.

Looking at perf, I don't see enough cpu cycles being used in the areas that this is being inlined into to be that concerned.


Add request a demo page

@aaronkao The section is at the bottom of the /kubernetes page (one of many places). Below is a screenshot:

@aaronkao The section is at the bottom of the /kubernetes page (one of many places). Below is a screenshot:

Is this the /layouts/partial stuff?

What is the difference between Need Technical Help and Help Getting Started?
Would help getting started be any different than getting a demo?
Copy in the demo should be "Talk with an expert and see Pulumi in action"
Outside of the demo one, I think the other three are redundant almost. I would replace with one of these
a. I want to migrate all my Terraform templates
b. I want to upgrade from Team to Enterprise
c. I want to purchase support


Improve Accuracy of the Model

Describe the enhancement
Improve the accuracy of the model. Change the epochs to 100 and the learning rate to 0.00001.

git fetch origin
git checkout 3-improve-accuracy-of-the-model


fix: Error when TouchManager calls addEventListener with name of type number.

Problem:
When an app using a global TouchManager is suspended and then resumed, the TouchManager triggers canvas.addEventListener with the type 'number' as the first argument, leading to an UncaughtJsExceptions.
  Error: Calling js method onStart failed
  TypeError: arg.toLowerCase is not a function

Solution:
Adding a conditional statement within the addEventListener extension in the canvas class. The modification ensures that the event type is a string.

Nice find 🔥


bring 'mark workspace protected' into 'apply dev env'

Purpose
If CircleCI is a bit congested, there can be a long delay between jobs on the pipeline. If the delay occurs between a successful Terraform environment apply and marking the environment as protected, it is possible that the automated cleanup can remove a brand new environment.
Approach
Move the command to mark the environment (workspace) as protected inside the job to apply the environment (ideally, before the "environment apply" is attempted).
Checklist

[x] I have performed a self-review of my own code
[ ] I have added relevant logging with appropriate levels to my code
[ ] I have updated documentation (Confluence/GitHub wiki/tech debt doc) where relevant
[ ] I have added tests to prove my work
[ ] The product team have tested these changes

Coverage remained the same at 81.076% when pulling 88038449c8bbed9db4e042da517f8d96ae811a7b on optimise-put-workspace into 24a30bf08ed243f268f2e39c61702c8eeaec1328 on master.

Marking workspace protected just before building the environment.


cmd/go: show the help message instead of suggesting "go help subcommand" when the --help/-h flag is passed

What version of Go are you using (go version)?
go version go1.11 darwin/amd64

Does this issue reproduce with the latest release?
yes
What operating system and processor architecture are you using (go env)?
$ go env
GOARCH="amd64"
GOBIN="/Users/fatih/go/bin"
GOCACHE="/Users/fatih/Library/Caches/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/fatih/go"
GOPROXY=""
GORACE=""
GOROOT="/usr/local/Cellar/go/1.11/libexec"
GOTMPDIR=""
GOTOOLDIR="/usr/local/Cellar/go/1.11/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/k_/87syx3r50m93m72hvqj2qqlw0000gn/T/go-build154500786=/tmp/go-build -gno-record-gcc-switches -fno-common"

What did you do?
I asked to print the help usage of the command go list:
$ go list --help
usage: go list [-f format] [-json] [-m] [list flags] [build flags] [packages]
Run 'go help list' for details.

What did you expect to see?
I would like to see the help output instead of suggesting me to run go help list.
# example output I would like to see:
$ go list --help
usage: go list [-f format] [-json] [-m] [list flags] [build flags] [packages]

List lists the named packages, one per line.
The most commonly-used flags are -f and -json, which control the form
of the output printed for each package. Other list flags, documented below,
control more specific details.
...

What did you see instead?
It suggested to me to run go help list.
I think this is a not very user friendly output. --help  (or -h) is a very common flag and is even parsed by the flag package. The go command understand that I'm seeking for a help, instead of suggesting me to run go help list, it should show me the help message.
As an example user case, suppose you run a command and somehow wrote it wrong:
$  go list -f
flag needs an argument: -f
usage: go list [-f format] [-json] [-m] [list flags] [build flags] [packages]
Run 'go help list' for details.

If the go command would support the --help/-h flags, I could press the up key on my keyboard  (the shell would show the last executed command) and append the --help flag to see what's wrong:
$  go list -f --help
usage: go list [-f format] [-json] [-m] [list flags] [build flags] [packages]

List lists the named packages, one per line.
The most commonly-used flags are -f and -json, which control the form
of the output printed for each package. Other list flags, documented below,
control more specific details.

...

This example is not only about go list itself, this applies to every single subcommand of the go command. This happens so many times and I think it's counter intuitive to write a comand from scratch (i.e: go help list, go help test, ...).  I don't know the origin why --help or -h is permitted and not allowed to be used, but if it's something that can be removed, I suggest we remove the restriction and show the help message instead of suggesting to call go help subcommand (for subcommand related --help messages).

I think the point is to have the output text be small, to not take up the entirety of the user's screen. For example, see https://github.com/golang/go/issues/26999.
Perhaps the -h output could be expanded a bit, and then say Run 'go help X' for more details..

@bcmills @rsc

I often find myself not fully remembering the details of how various flags for different tools work, so my workflow is to start composing the command I want to run, then at the end add --help so that I can read the help text, press up to restore the command I'm composing, remove --help and add whatever the CLI arguments that I am trying to use. If Go were to adopt having --help flags for all commandline tools that would print the full help output when --help text is requested, this workflow would work much better.

Is this really all there is in terms of discussion on this topic? I would've thought more than 4 people would've complained about this.  For me, this is a huge annoyance.  I frequently make a mistake with an argument
For example, I frequently make errors on
go test -run <messy-regex-that-doesn't-work>

and then want to look up the argument.
go test --help

whoops,  I used --help instead of go help.
I think the difference between my frustration, and other people's lack of frustration, might be the fact that I deal with more than 1 programming language on a day-to-day basis. I frequently context-switch between Golang, bash, python, java, helm, and C.  For people who primarily program in Golang, maybe  simply remembering go help  is good enough.  Maybe it's an IDE thing too. I work in the shell mostly.  But I would guess that other more admin/devops-y kind of people would have issues with --help not printing help text.
Is that all there is to this topic?  I would've expected someone in here would be strongly against supporting --help.
Would a patch be welcome?

The current pattern is that go list -h or go list -help shows the supported flags, and tells you how to find more detailed information.  Seeing the supported flags may be enough to solve the problem.  If not, the more detailed help is available.
This is a situation where we can't possibly make everybody happy.  To me the current approach doesn't seem like a terrible compromise.

Ok, so there are people that are against supporting --help.   I thought this might've just been one of those topics that nobody got the time for.

This proposal seems very similar to the concerns raised in this issue, and the proposal was accepted: https://github.com/golang/go/issues/63659

I don't think these feel like similar topics, but I could see how the proposal in #63659 being accepted  could be seen as evidence that this issue won't move forward. The way I'd summarize this issue is that bash commands (especially coreutils commands) generally offer --help as the way to get usage information.  The go command is an outlier but wants to standardize instead amongst go packages instead of CLI tools.
But these ideas don't need to go against eachother.  --help could just output the same message that go doc <package> displays.  that wouldn't go against the #63659 proposal.

#63659 proposes a specific format for --help more in line with traditional unix tools: summary line plus flags with short descriptions. see https://github.com/golang/go/issues/63659#issuecomment-1854634487
go help will still exist for longer form content.
Given #63659's acceptance, I'll close this as won't do.


Repository clone panel overlaps file upload button

Gogs version (or commit ref): v0.9.97
Database (use [x]):

[ ] PostgreSQL
[ ] MySQL
[ ] SQLite
[x] Not relevant

Can you reproduce the bug at https://try.gogs.io:

[ ] Yes (provide example URL)
[x] No (because it is configured differently)
[ ] Not relevant

Log gist: not relevant

Description
The clone URL overlaps the

This seems to be relevant:

The language is set to German, the translated string may be longer than thought
SSH is disabled, so that there is no "switch button" on the left of the clone URL
I am using the server in offline modus

BTW what's also interesting is that on my instance the button text is bold as set in the CSS file "semantic-2.2.1.min.css":
.ui.button {
  [...]
  font-weight: 700;
  [...]
}

Whereas on try.gogs.io is is overwritten by "gogs.css":
.repository.file.list #file-buttons .ui.button {
  [...]
  font-weight: normal;
  [...]
}

Apparently, demo site is running <IP_ADDRESS>1.

Yeah, maybe the bold issue has already been fixed there.
So what about the overlap issue?

I noticed this was actually a kind of caching issue. Sorry for the inconvenience.

.. :scream:


Idealized ice-ocean interaction scenarios

We need a few idealized scenarios to test and explore the dynamics of our coupled ice-ocean system. I think we should try at least 2, but maybe 3 cases (1D, 2D, 3D).

The 1D case could be a diurnal cycle in fall, when we expect ice growth.
The 3D case could be to reproduce http://eisenman.ucsd.edu/papers/Si-Stewart-Eisenman-2022.pdf
(The 2D case could just be the zonal average of the 3D case.)

@jbuffo @jlk9

@navidcy has set up an Antarctic Shelf Current simulation before... not sure what they did about the surface / sea ice boundary conditions but he might be able to point @jlk9 to some code.
Also @jlk9 do you have access to GPUs?

As for a column model, @jlk9 check out this somewhat-related example:
https://github.com/CliMA/ClimaOceanBiogeochemistry.jl/blob/main/examples/nutrients_plankton_bacteria_detritus.jl
That example uses CATKEVerticalDiffusivity to model ocean turbulence which I think we should also use for our column model here. Of course, you can ignore the biogeochemistry for now for the ice column model. I think we just want to use temperature and salinity with a linear equation of state.
Another relevant case is
https://github.com/CliMA/Oceananigans.jl/blob/main/examples/ocean_wind_mixing_and_convection.jl

We can also consider setting up a large eddy simulation (LES) case. For example, we could try to embellish the simulations in this paper:
https://journals.ametsoc.org/view/journals/phoc/51/2/jpo-d-20-0114.1.xml
with a dynamical ice model.

@navidcy has set up an Antarctic Shelf Current simulation before... not sure what they did about the surface / sea ice boundary conditions but he might be able to point @jlk9 to some code.

Yes, we did something. Quite preliminary... but here it is
https://github.com/navidcy/ASC-idealised
Sea-ice: we ignored it :)
Surface BCs: relax to a T and and S profile

@glwagner Thanks for the references! I have access to GPUs, Patrick got a Lonestar6 allocation on TACC. It doesn't have Julia modules but I've downloaded it locally and gotten Julia code to run. The queue times for GPU jobs can be kind of long though.


Demo recording stores graphics configuration and expects it to be compatible when running the demo

I tried to run the benchmark demo on an old computer (OpenGL 2.1) and I was not able to run the demo and I got that error message:
Missing OpenGL extensions: GL_ARB_texture_float GL_EXT_gpu_shader4
 GL_EXT_texture_integer GL_ARB_texture_rg GL_ARB_texture_gather
 GL_ARB_uniform_buffer_object

The demo was recorded on a computer having all those features, but the one on which I tried to run the demo has not.
Is it possible that the demo stores some graphics configuration and expect it to be compatible when running the demo?

Can you still reproduce this? It seems implausible as the demo only writes entities that came from the network.


Browser example on windows

Hi,
does the browser example works on windows?

It should. Are you having any trouble?

@phillmac thanks for the reply,
I am trying to install it but there is not any commands for windows. there are only linux and mac commands to run browser versions. However I have managed to build js files and probably have to setup my own environment


Usage example with TypeScript

It would be nice with a simple example of how to import and use react-carousel with TypeScript in the documentation.

I'm closing this issue, as it's fixed by #66

@lopno
Can I ask you to fill in this form https://docs.google.com/forms/d/1tfRs1Io49tJBwz-06aDnz8hrJ3WySJTi45y4k6hHGaQ ?


More detail to "ApplicationDbContext"

It would be great to see more detail in the "ApplicationDbContext" that describes how to take control of the dbcontext. If you do follow these instructions, it does break the call to AddApiAuthorization in startup.cs.

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

ID: 21cb7455-3305-9316-5440-bdc22947a82d
Version Independent ID: 137d4b94-7b26-3911-b22d-42c754a95fc1
Content: Introduction to authentication for Single Page Apps on ASP.NET Core
Content Source: aspnetcore/security/authentication/identity-api-authorization.md
Product: aspnet-core
Technology: aspnetcore-security
GitHub Login: @javiercn
Microsoft Alias: scaddie

Moved to master issue: Authentication and authorization for SPAs #16406


[Bug] Error after sign-in on admin

Screenshot:

Hi, Thanks for reporting.
The issue should be fixed by this pr: https://github.com/medusajs/admin/pull/663
You should be able to run medusa admin from that branch until it's merged 😄

Solved in #663


Always get deploying bootstrap stack message

I recently upgraded to SST 2.0 and deploying via CI always gives this message:

I also checked CloudFormation and the bootstrap stack does exist. Is this just a message or does it create/update this stack every deployment?

Hey @ryands17, one way this could happen is if CI is using a different version of SST than ur local.
Can you run yarn sst version prior to yarn deploy in your CI to double check the version.
Also, what's the bootstrap version? You can see in the CFN outputs tab. It should be version 7 if you are using the latest SST version.

@fwang The outputs section is empty. Is it happening because we have another team still on SST v1 and the bootstrap stack is overriden by that?

Facing the same issue with different versions of SST 2.
@fwang Would it be possible to be more transparent with bootstrap version changes?
The most recent bump in version was done here https://github.com/serverless-stack/sst/commit/36e22c43649105bd355e551433d65c8b510fecad and released in https://github.com/serverless-stack/sst/releases/tag/v2.0.17 but its not really clear from the release notes.

@ryands17 yeah the v1 to v2 bootstrap change is a big one, they aren't compatible.

We are transition this repo to https://github.com/sst/v2 and are closing this issue for now. If it is still relevant please reopen it there - sorry for the trouble


Support for talks with multiple presenters

I have submitted a talk. There should be two presenters for the talk. As far as I can tell the EuroPython system doesn't support this.

Hmm, the back end does support this. I just don't know how to add the additional speakers using the front end. If you can let me know who the second speaker is, I can try to add this to the talk.

https://ep2015.europython.eu/conference/p/dimiter-naydenov

Thanks. I tried to add Dimiter as speaker, but this didn't work for some reason. We'll have to look into this.

We have been so far manually adding the co-speakers from the admin. Could we add this feature in the submission page?


The name of .use() is unintuitive

(this is extracted from a conversation in #74)
The name .use() is a nice homage to Express, but ironically it is not particularly expressive, nor does it mean anything to .net developers.
My proposed replacement is .onTurn(), which exactly describes what it does: runs on every turn.
Then, as described in #127, you can use the same name onTurn name for the middleware method.
Now the naming of these methods guides you towards their purpose, not away.

I'm personally mulling this over but would like others, including @tomlm and @cleemullins  to weigh in.
So the additional arguments for leaving it .use() are that besides the fact this is the syntax used by Express and Restify, it's also the syntax used by other bot building JavaScript frameworks like BotKit and BotPress.  Honestly, if you've been programming in Node for more than a month, you have a pretty good sense that .use() means you're adding a plugin to something so I'm not sure I agree with the whole "unintuitive" comment.

The name itself is unintuitive. It conveys nothing about middleware.
Obviously if you are familiar with the convention as used by other Node libraries, then you're fine.

After discussing this with some .net folks it seems this is in common enough usage to be considered ubiquitous.


Path Breakout Shouldn't Be Possible

User Story
As an user of an op
I should have assurance the file tree I pass an op is all that can be accessed by the op
In order to avoid it having access to more than I intend
Example
An op designer shouldn't be able to do $(appDir/..)
inputs:
  appDir:
    dir:
      default: .
run:
  serial:
    - op:
        ref: github.com/opspec-pkgs/git.repo.clean#1.1.0
        inputs: { srcDir: $(appDir/..) }

example https://github.com/containers/storage/blob/master/pkg/archive/archive.go#L951


Move proto<->JSON utilities to their own library. [phab:D91]

Created by zarko at 2015-02-24 18:19:28:

jdennett accepted this revision at 2015-02-24 23:19:57

fromberger accepted this revision at 2015-02-24 23:20:36


Fix SNS.publish span name

Short description of the changes

According messaging specification, spanName for sns.publish should ends with send operation and not Publish.

@blumamir @willarmiros @NathanielRN
Is it ready to be merged?


Revert removal of addr and peeraddr delegates

Fixes the issue reported in #166

@d-snp have you verified this works as expected? I seem to remember that on some versions of the socket the peeraddr method does not return the information anticipated. If you can confirm this does work, I'll merge it in.

I added some silly specs to confirm the existance of the delegators and that they respond the peer addr tuples. It seems to be working but I haven't tested it outside of the specs. If the socket wasn't a true TCPSocket then I think the peeraddr/addr methods would be missing, that's what you were getting at right? Or is there something I should test out in a real world scenario?

great work on the wsdriver integration - i've updated angelo to work with this PR :+1:
when this merges, i'll merge https://github.com/kenichi/angelo/pull/50 and update Gemfile

Looks good @d-snp! Merging @kenichi, so you ought to be good to go.


replace scalariform with scalafmt

Problem

scalariform is not maintained

Notes
This introduces a lot of changes and is likely to affect other PR :(

Dup https://github.com/zio/zio-quill/pull/2193 🙇


maintainers: transition myself to emeritus status

Description:
I no longer have the time to dedicate to this project, so I
am transitioning myself to emeritus status.
Good luck to everyone.

/cc @openservicemesh/osm-maintainers @trstringer @keithmattix

Thank you for all of your efforts over the years Shashank! OSM would not be where it is without. Good luck in your new endeavors!

@shashankram It really saddens me to see you leave the maintainers list.
Allow me to share with you how much I have enjoyed working with you and the other folks on this project in the past 3 years. I will forever cherish the memories of the pre-pandemic days, when @snehachhabria, you and I walked to each other's desks and discussed service mesh.  The whiteboarding sessions in Sunnyvale were just as epic as the 7th-floor view of Moffett Field. Shashank, your contributions have been monumental! You're tenacious and with an eye on quality, readability and a really high bar for product development. Without your persistence and creativity we wouldn't have been able to get OSM to OSS, CNCF donation, then v1 and private/public/GA launches as a managed product.
And finally - selfishly - I loved learning from you! You're a wonderful human being, amazing engineer, and I really hope I get to write & review code with you again!

@shashankram It really saddens me to see you leave the maintainers list.
Allow me to share with you how much I have enjoyed working with you and the other folks on this project in the past 3 years. I will forever cherish the memories of the pre-pandemic days, when @snehachhabria, you and I walked to each other's desks and discussed service mesh. The whiteboarding sessions in Sunnyvale were just as epic as the 7th-floor view of Moffett Field. Shashank, your contributions have been monumental! You're tenacious and with an eye on quality, readability and a really high bar for product development. Without your persistence and creativity we wouldn't have been able to get OSM to OSS, CNCF donation, then v1 and private/public/GA launches as a managed product. And finally - selfishly - I loved learning from you! You're a wonderful human being, amazing engineer, and I really hope I get to write & review code with you again!

Hey @draychev, thanks for the kind words. Those were the indeed some of the brighter days of working on this project, and achieving the challenging goals we set out. I hope to collaborate with you again in the future!

@shashankram, that was a good run. Though late, wishing you best of luck in any and all your future endeavors.
Cheers mate!


Use Yarn instead NPM

yarn restricted to version 1
usage of npm (either npm install or npm install <package>) is blocked
package-lock.json removed
yarn.lock created
added .npmrc files

Just as a side note, yarn.lock looks significantly less than package-lock.

🚀

:tada: This PR is included in version 0.0.9 :tada:
The release is available on:

npm package (@npm-package-deploy dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Cluster-1 Storage Policy Modification Updates

Removed notes stating "Changing the storage policy of the default management cluster (Cluster-1) isn't allowed." This is allowed, supported, and verified as functional.

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

#sign-off


feat: Migrate routing from React Router to TanStack Router

This is part of the huge redesign of the frontend website where we will separate routing from components in an easier way to allow us to find routes a lot easier within the codebase. As a bonus with this approach is that we can also do lazy loading and speed up loading times
As an example, see files like usage.lazy that is now loaded separately when navigating to it because of lazy loading. That means the application will not load resources if they're not needed. As we do not use @patternfly/react-charts everywhere we can also reduce dependency loading
In this refactor a few things have been done

We have moved routing from a routes.tsx format to a file-based format where each file has to declare it is a route and what the name is. -- This also means we will no longer generate the sidebar, but that will have its benefits as well.
/app is removed in favor of routes and components
There is also a components/ directory for handling displaying more complex routes so there is a separation of concern.
Multiple tables have been upgraded from deprecated PatternFly Table to their successor Table component. With this I also added skeleton loaders (so it is less jarring on the eyes)
API queries are now defined in /queries directory which allows us to use it anywhere, separation of concern
API definitions are now centralized in apiDefinitions.ts
Routing changes

/results has been renamed to be part of /jobs -- redirect exists
/jobs:

/bodhi-updates has been renamed to /bodhi -- redirect exists
/copr-builds has been renamed to /copr -- redirect exists
/downstream-koji-builds has been renamed to /koji-downstream -- redirect exists
/koji-builds has been renamed to /koji -- redirect exists
/propose-downstreams has been renamed to /sync-release/downstream -- redirect exists
/pull-from-upstreams has been renamed to /sync-release/upstream -- redirect exists
/srpm-builds has been renamed to /srpm -- redirect exists
/testing-farm-runs has been renamed to /testing farm -- redirect exists

/pipelines has been renamed to /pipeline -- redirect exists

With this directory structure we can also enforce ourselves to remove helpers from components and routes as they will not fit the directory name. Instead we will need to think of something new
This has full feature parity with existing codebase where nothing should break
https://tanstack.com/router/latest

During draft form not all routes are converted. Instead they will be converted over time
RELEASE NOTES BEGIN
Enhance routing logic and increase performance
RELEASE NOTES END

@lbarcziova I can change it to be jobs/pull-from-upstream/$id and so which would be good enough for now. But I'll wait to hear what you say from the meeting tomorrow. It's not too much work :D

@Venefilyn we have briefly discussed and agreed that using just (from-)upstream/downstream might cause more confusion, so would rather stick to including the whole job name for the release sync jobs.

@Venefilyn we have briefly discussed and agreed that using just (from-)upstream/downstream might cause more confusion, so would rather stick to including the whole job name for the release sync jobs.

@lbarcziova so in short, /sync-release/from-upstream and /sync-release/propose-downstream? Or just using what is currently live, as in /pull-from-upstream and /propose-downstream?

Using what is currently live :+1:

In that case the PR is ready to be merged if testing and structure is approved

LGTM, could you please just change this so it doesn't crash?

Already fixed! Just forgot to mark as resolved

@lbarcziova fixed in 4c59ac624f2ff8d63d9dd473a7a7d7558d8b037d, also added the router devtools in development, checked and it doesn't show in production
merge whenever!

@Venefilyn thanks, merging!


Automatic lane change

How to realize automatic lane change in “highway-v0”?

In many environments, a discrete action spaces allow you to change lane though the actions 0: left lane and 2: right lane.
To make it automatic, you need to train an agent to do so, see https://highway-env.readthedocs.io/en/latest/quickstart.html#training-an-agent

So I need to download the latest "highway-env" environment, is it right?

Yes

There is a problem in the code of “training an agent”: the dqn package cannot be imported or installed. Which package needs to be installed to solve this problem?

The line is from stable_baselines3 import DQN, so you should install https://github.com/DLR-RM/stable-baselines3

And I input "pip install" what?

Please kindly read the installation instructions in the page I mentioned.

OK, I succeed. And my Python version is 3.6.8. When the sample code runs, two errors are reported, one is "ImportError: cannot import name 'MappingProxyType'" and the other is "ImportError: cannot import name 'wraps'". How to solve it?

No idea, I have never this error before.
I don't know if it is related, but if you are on windows I recommend that you install python through Anaconda.

I have tried, but it failed.

Well, you can still run the online version: https://colab.research.google.com/github/eleurent/highway-env/blob/master/scripts/sb3_highway_dqn.ipynb

This site is timeout in my computer. And I copy the code to my pycharm, the error is that:

This site is timeout in my computer. And I copy the code to my pycharm, the error is that:
D:\Anaconda\python.exe D:/PycharmProjects/pythonProject2/test.py
Error processing line 1 of D:\Anaconda\lib\site-packages\google_auth-1.18.0-py3.8-nspkg.pth:
Fatal Python error: initsite: Failed to import the site module
Traceback (most recent call last):
  File "D:\Anaconda\lib\site.py", line 168, in addpackage
    exec(line)
  File "<string>", line 1, in <module>
  File "D:\PycharmProjects\pythonProject2\highway_env\types.py", line 1, in <module>
    from typing import Union, Sequence, Tuple, List
  File "D:\Anaconda\lib\typing.py", line 28, in <module>
    import re as stdlib_re  # Avoid confusion with the re we export.
  File "D:\Anaconda\lib\re.py", line 122, in <module>
    import enum
  File "D:\Anaconda\lib\enum.py", line 2, in <module>
    from types import MappingProxyType, DynamicClassAttribute
ImportError: cannot import name 'MappingProxyType' from 'types' (D:\PycharmProjects\pythonProject2\highway_env\types.py)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "D:\Anaconda\lib\site.py", line 586, in <module>
    main()
  File "D:\Anaconda\lib\site.py", line 573, in main
    known_paths = addsitepackages(known_paths)
  File "D:\Anaconda\lib\site.py", line 349, in addsitepackages
    addsitedir(sitedir, known_paths)
  File "D:\Anaconda\lib\site.py", line 207, in addsitedir
    addpackage(sitedir, name, known_paths)
  File "D:\Anaconda\lib\site.py", line 178, in addpackage
    import traceback
  File "D:\Anaconda\lib\traceback.py", line 5, in <module>
    import linecache
  File "D:\Anaconda\lib\linecache.py", line 11, in <module>
    import tokenize
  File "D:\Anaconda\lib\tokenize.py", line 33, in <module>
    import re
  File "D:\Anaconda\lib\re.py", line 122, in <module>
    import enum
  File "D:\Anaconda\lib\enum.py", line 2, in <module>
    from types import MappingProxyType, DynamicClassAttribute
  File "D:\PycharmProjects\pythonProject2\highway_env\types.py", line 1, in <module>
    from typing import Union, Sequence, Tuple, List
  File "D:\Anaconda\lib\typing.py", line 31, in <module>
    from types import WrapperDescriptorType, MethodWrapperType, MethodDescriptorType
ImportError: cannot import name 'WrapperDescriptorType' from 'types' (D:\PycharmProjects\pythonProject2\highway_env\types.py)
Process finished with exit code 1

Interesting, thank you for sending the full error message!
Apparently, python is confused because I named a file "types.py". I will rename it and the problem should be fixed. I'll let you know when it is done.

OK, thanks.

It should now work.
Please, reinstall highway-env using the development version with:
pip uninstall highway-env
pip install --user git+https://github.com/eleurent/highway-env

Or alternatively, if you cloned the project into PycharmProjects\pythonProject2 rather than installing it with pip, you can simply do a
git pull origin master

However, there are still mistakes, as follows:"gym.error.UnregisteredEnv: No registered env with id: highway-fast-v0".

I know this error. And there is another error: "AttributeError: module 'tensorflow' has no attribute 'io'". How to solve it?

However, there are still mistakes, as follows:"gym.error.UnregisteredEnv: No registered env with id: highway-fast-v0".

This probably means highway-env is not up to date. Try
import highway_env
And
print(highway_env.__version__)
It should be at least v1.3. Otherwise, uninstall it and reinstall.
Also, check that highway-env was imported in the beginning of the script.

I know this error. And there is another error: "AttributeError: module 'tensorflow' has no attribute 'io'". How to solve it?

You should probably install tensorflow separately.

Is this a dead circle? And in the following DQN function, how to adjust the number of training times and the minimum number of training times?# Load and test saved model model = DQN.load("highway_dqn/model") while True:   done = False   obs = env.reset()   while not done:     action, _states = model.predict(obs, deterministic=True)     obs, reward, done, info = env.step(action)     env.render()env.close()env = gym.make("highway-fast-v0") model = DQN('MlpPolicy', env,               policy_kwargs=dict(net_arch=[256, 256]),               learning_rate=5e-4,               buffer_size=15000,               learning_starts=200,               batch_size=32,               gamma=0.8,               train_freq=1,               gradient_steps=1,               target_update_interval=50,               verbose=1,               tensorboard_log="highway_dqn/") model.learn(int(2e4)) model.save("highway_dqn/model")

What do you mean "a dead circle"?
The number of training timesteps is the argument of model.learn()

No statement to terminate the outer loop was seen.

Which parameter is used to adjust the training times?

No statement to terminate the outer loop was seen.

I see, but what outer loop are you talking about?

Which parameter is used to adjust the training times?

The training loop is started by the line
model.learn(int(2e4))
Here, 2e4 is the training duration, you can make it longer or shorter.

The outer loop is “while True:”, and the inner loop is "while not done:".

Oh okay!

the purpose of these loops is to test the trained policy and generate videos of episodes.
the outer loop is a loop over episodes, and it is infinite (we will generate videos until the script is manually interrupted)
the inner loop is a loop over timesteps within an episode

But this is all happening after the training, which is inside model.learn()
Note that I have since updated the script, and the outer loop has been changed to a fixed number of episodes, instead of the infinite loop:
https://github.com/eleurent/highway-env/blob/97aabdc6b34b2b178ba5922beaf9e7e1206d8bcf/scripts/sb3_highway_dqn.py#L41

OK. And what does the following three lines of code mean? Is it for updating the "env", where "env = gym.make("highway-fast-v0")"?
env = Monitor(env, directory="highway_dqn/videos", video_callable=lambda e: True) env.set_monitor(env) env.configure({"simulation_frequency": 15})  # Higher FPS for rendering

env = Monitor(env, directory="highway_dqn/videos", video_callable=lambda e: True)
The Monitor wrapper allows to record videos and statistics of the env episodes.
env.configure({"simulation_frequency": 15})  # Higher FPS for rendering```

Both of these lines are optional, and used to have a higher video framerate

Okay. And I have a question: what does the "centering_position" mean? In code, "centering_position" is "[0.3, 0.5]".

It is the [horizontal, vertical] position of the vehicle in the rendering window. For example:
[0, 0] --> top-left
[0.5, 0.5] --> middle
[1, 1] --> bottom-right

Okay. I understand it.


Bad header when using external libzip++

In file<EMAIL_ADDRESS>#include <libzip++.h> must be #include <libzippp.h>

The libzip++.h and lib zip..cpp are both included in the repository. The CMake script will copy the header file to the build directory.
Changing to libzippp.h is probably locating a header file present on your system already.
Please ensure that the CMake script is run properly.

I'm running my own build system and not using your bundled libs.
In general this case also should work.

I have now embedded the libzippp library in OpenXLSX. That should solve the issue.

I see. Thank you.


Stop fontconfig from loading from host’s /etc/fonts/conf.d

Fixes: https://launchpad.net/bugs/2025651
At the moment the snaps in at least lunar and mantic load font configuration both from gnome-42-2204 and from the host system’s /etc/fonts/conf.d. This has proved to confuse fontconfig and result in unexpected issues. Stopping the snaps from loading from /etc/fonts/conf.d seems to fix the issue.
This PR reverts part of https://github.com/snapcore/snapcraft/commit/407dc755, which is sad IMO. But it’s a result of the reluctance to use font configuration from the host system as expressed in this comment, and for now the proposed change is the easiest way to stop fontconfig from being confused.

I wonder if we should add a comment explaining that etc isn't not included and why, perhaps simply pointed to https://bugs.launchpad.net/bugs/2025651 ?

Good idea. I added such a comment.


FlipActivity Bootstrap to IntroJS Tour

hey @llaske
i have changed bootstrap tour to inrojs js tour in Flipactivity ,pls review it.
Refer to issue:https://github.com/llaske/sugarizer/issues/1090

@llaske please review it i have made the changes

@VedantSharma11 only a part of it

@llaske fixed it
but actually i had  changed the canvas size because when the 2nd popup shows up the canvas moves a bit upwards so to fix it i decreased the height which fixed the issue.
pls review

Yes, you're right the move should be fixed.

But changing the way the activity work is not a good idea. You should explore other ways. May be using some introjs events.

@llaske Sure i'll try some other way to fix it instead of changing the canvas size

@llaske i have fixed it please review

@llaske i have fixed it please review

Good @VedantSharma11 . Thanks.


How to get feature set along with hyper parameters for each iteration

Hi,
Thank you so much for the great package. It is really easy to use.
I am developing a project and need to apply nested cross validation for BoostRFE and want to get the score of each feature-set and each hyper param.
To make it a bit more clear:
In each iteration, the algorithm goes through feature selection and hyper parameter optimisation.
Using "model.trials_" I can get the parameters and using "model.scores_" I can get the score of each parameter!
However, I cannot find the result of the iterations for each feature set!
How can I get trials for both feature set and hyper parameters. And also the relevant performance for feature-set/hyper-param?
Should the model.trials return feature-set and hyper param all together?

Hi, that's the intended behavior.
with model.trials_ you get a simple list of the parameter combinations detected.
with model.scores_ you get the list of the scores in each trial (order by starting execution time).
with model.score_history_  you get the list of the feature selection process of the best param combination


Failing to start with NFS-mounted output

When the /output volume is mounted to an NFS (v4) share, the container fails to start with the error:
chown: /output: Invalid argument
[cont-init.d] 90-makemkv.sh: ERROR: Failed to take ownership and no write permission on /output.
[cont-init.d] 90-makemkv.sh: exited 1.

However I can confirm that I can write to the location.

Did you check that the user configured as USER_ID/GROUP_ID does have write access ?  This is what the failed check is doing.

Yes, it does seem to have write access. I spun up a second container of justcontainers/base-alpine:latest to test the s6 compatibility, with that volume mounted in it. I then created a script to mimic the ownership tests:
#!/usr/bin/with-contenv sh

if s6-setuidgid 1000:1000 [ ! -w /output ]; then
        echo "No Write Access"
else
        echo "Write Access"
fi

if s6-setuidgid 1000:1000 mkdir /output/temp ; then
        echo "Write Access"
else
        echo "No Write Access"
fi

if [ ! -w /output ]; then
        echo "No Write Access"
else
        echo "Write Access"
fi

(I know the chown doesn't work because of the above errors)
After running the above, I got the following output:
No Write Access
Write Access
Write Access

And I can verify that the /output/temp directory was successfully created.
So (to me) it looks like a weird interaction between s6-setuidgid and the bash [ -w <folder> ] check. I have had problems in the past with these kinds of volumes on my system, (NFSv4 on TrueNAS Core, i.e. FreeBSD) but they've largely worked because the other containers I've run just try the chown and assume that's good enough 😅 which is why is my pull request #116 I just added a flag to disable the check, since my above test script seems to indicate no problems actually writing to it.
Also, my issue and pull request on your HandBrake repo are the same issue and resolution.

To have a complete picture of the problem, could you provide the output of ls -ld /output ?
I think that it should be possible to fix the check itself.

ls -ld /output gives:
drwxrwxr--    3 42949672 42949672         3 May 19 00:48 /output/

I adjusted the write test.  Can you try the latest image to see if it fixes your issue ?

Yes, that works great! Thank you for changing it. I do still have to run it with the TAKE_CONFIG_OWNERSHIP flag, because the /config folder has the same issue, so I don't know if you'd want to change the check there too.
Also, I know it's a lot to ask, but would you be able to adapt https://github.com/jlesage/docker-handbrake and https://github.com/jlesage/docker-mkvtoolnix to use this check too? I want to use them too, but this issue stops me with them as well. Much thanks!

Thanks for confirming that the /output folder is now working for you.  I will do the change for the /config folder as well.
And yes, I will make sure other contains are also fixed.  There are no new images yet, but the fix for the /output folder is already propagated to other containers.

Shouldn't you simply use the mount type nfs for the volume itself instead of tweaking that in the container?

Shouldn't you simply use the mount type nfs for the volume itself instead of tweaking that in the container?

@34will, do you still have the same setup? I would be interested in your NFS server configuration.


Update microsoft-defender-endpoint-linux.md

Adding explicit indication that the workstation versions of supported distros are unsupported.

Thank you @MasterAndyWan for the pull request. I've moved it to our private repository so we can review and publish.
https://github.com/MicrosoftDocs/defender-docs-pr/pull/1915


jMolecules and ByteBuddy Support with IntelliJ IDEA

I am experiencing several issues when working with the jMolecules framework in IntelliJ IDEA. These issues affect both application runtime and development experience in the IDE:
1. Run Configuration Issue:

The application fails to start unless I manually configure a “Before Launch” task in the IntelliJ run configuration to execute mvn compile. I’m unsure if I’m misconfiguring something or if this feature is not yet fully implemented. I was unable to find any relevant information about this online.

2. ByteBuddy Code Generation:

Even after configuring the “Before Launch” task, ByteBuddy fails to generate the required code for transforming associations into associated aggregate IDs. This leads to runtime failures when saving or retrieving aggregates using Spring Data JDBC. Is ByteBuddy supposed to generate this converter, or should I implement a custom converter?
I ask because I noticed the existence of AssociationResolver, and it seems its purpose is to create such a converter. However, in my project, it fails to do so. Here’s an example:

@Getter
@Table("test_order")
public class Order implements AggregateRoot<Order, OrderId> {

    private final OrderId id;
    private final Association<Customer, Customer.CustomerId> customer;

    // If I use this constructor, JDBC will not be able to convert UUID into CustomerId without a custom converter
    public Order(OrderId id, Association<Customer, Customer.CustomerId> customer) {
        this.id = id;
        this.customer = customer;
    }

    public Order(OrderId id, UUID customer) {
        this.id = id;
        this.customer = Association.forId(new Customer.CustomerId(customer));
    }

    public static Order of(Customer customer) {
        return new Order(new OrderId(UUID.randomUUID()), customer.getId().id());
    }

    public record OrderId(UUID id) implements Identifier {
    }
}

3. IDE Warnings:

IntelliJ still incorrectly flags errors or warnings in the code. For example, during dependency injection, it shows: "Could not autowire. No beans of 'OrderService' type found. " This happens even when I configure the “Before Launch” task in the run configuration and ByteBuddy generates the necessary beans and application actually works.

Here is my repo: https://github.com/bekaChichua/jmolecules-example
If I’m missing something, please provide resources or guidance on how to resolve these IntelliJ-specific issues. Alternatively, if there are any workarounds you can suggest, I would greatly appreciate it. I’ve spent a lot of time searching for solutions, but there doesn’t seem to be much documentation available, likely because this project is relatively new.
Thank you for your help!

It doesn't, really. As it suggests the ByteBuddy plugin to do something JPS-specific, not jMolecules. I've replied again because it's neither about ByteBuddy nor JPS, actually. But yeah, it's tiring. :(


Opening multiple files in the same git repo, when repo is created under root path of NTFS drive, causes repository to be opened in VSCode multiple times

VSCode Version: Code 1.19.3 (7c4205b5c6e52a53b81c69d2b2dc8a627abaa0ba, 2018-01-25T10:36:34.867Z)
OS Version: Windows_NT x64 10.0.16299

Steps to Reproduce:

Initialize a git repository in the root path of a drive (e.g. under C:\.git)
In Visual Studio Code, open a file in that drive that isn't gitignored or part of another git repository. The C:\ repository should open under the "source control" sidebar.
Open another file (or more than one) that satisfies the above. Note that under "source control", the repository is opened again. Closing a file or switching to a different tab also causes this to happen.

This is what I ended up with:

Reproduces without extensions: Yes

Ah. Seems like the insider release had fixed it. I haven’t tried the insiders version with the same extensions enabled though.
From: João<EMAIL_ADDRESS>Sent: Monday, February 5, 2018 12:06 AM
To<EMAIL_ADDRESS>Cc<EMAIL_ADDRESS><EMAIL_ADDRESS>Subject: Re: [Microsoft/vscode] Opening multiple files in the same git repo, when repo is created under root path of NTFS drive, causes repository to be opened in VSCode multiple times (#42944)
Can you try out our insider releasehttps://code.visualstudio.com/insiders? Does it reproduce there?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/Microsoft/vscode/issues/42944#issuecomment-363008717, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ASQTEgIvx6AkWKy4OkLDrW1e6LyXV-_fks5tRraMgaJpZM4R49pf.


Export to Wikidata-flavoured RDF

On https://www.wikidata.org/wiki/Wikidata:Primary_sources_tool#Data_format it is suggested that data imports should be formatted in RDF, following Wikidata's export conventions. The Wikidata extension could provide export to that format (without having to use the RDF extension, which would be quite complicated I think).
One thing I am suspicious about is the generation of statement identifiers, which do not make sense before they are ingested in Wikidata. @marfox, do you have any example of a data producer providing an RDF export of their data in such a format? How did they generate the statement ids?

Some discussion is available here:
https://phabricator.wikimedia.org/T173749

Closing this because we still don't have any description of how RDF would work for data import - we would need detailed specs for that. People can use the existing QuickStatements exporter and plug that to https://github.com/marfox/qs2rdf.
Feel free to reopen if specs are published eventually.