Is session refresh implemented?

I saw the "offline_access" scope being used for the OAuth0 provider but no reference to refresh tokens in the codebase. Are refresh tokens implemented/utilized? Or is the session from the OAuth2 provider only used once and afterwards everything is delegated to h3?

@septatrix I have successfully achieved the refresh of the session with the session hook for 'fetch'. If the session has expired and I have a valid refresh token, then the refresh workflow is initiated to obtain a new valid token.

@septatrix I have successfully achieved the refresh of the session with the session hook for 'fetch'. If the session has expired and I have a valid refresh token, then the refresh workflow is initiated to obtain a new valid token.

Would you mind sharing the code for that?

@PGLongo I would be also very interested in that! 😊

Sure! Here I refresh the Microsoft Oauth. Note that in the auth handler I have stored the expirationDate in the session.user
// server/plugins/session.ts

import { useRuntimeConfig } from '#imports'
import type { OAuthMicrosoftConfig } from '~/server/api/auth/login.get'

export default defineNitroPlugin(() => {
  sessionHooks.hook('fetch', async (session, event) => {
    const now = new Date()
    const expirationDate = new Date(session.user.expirationDate)
    const jwt = getCookie(event, 'jwt')
    console.log(expirationDate < now, expirationDate, now)
    if (expirationDate < now || !jwt) {
      const config = useRuntimeConfig(event).oauth?.microsoft as OAuthMicrosoftConfig

      const tokenEndpoint = `https://login.microsoftonline.com/${config.tenant!}/oauth2/v2.0/token`
      const params = new URLSearchParams()
      const refreshToken = getCookie(event, 'refresh-token') || ''

      params.append('client_id', config.clientId!)
      params.append('client_secret', config.clientSecret!)
      params.append('refresh_token', refreshToken)
      params.append('grant_type', 'refresh_token')

      const data = await $fetch(tokenEndpoint, {
        method: 'POST',
        headers: {
          'Content-Type': 'application/x-www-form-urlencoded'
        },
        body: params
      })
      const now = new Date()
      session.user.expirationDate = new Date(now.getTime() + data.expires_in * 1000)
      await setCookie(event, 'jwt', data.access_token, { httpOnly: true, secure: true, maxAge: data.expires_in })
    }
  })

  sessionHooks.hook('clear', async (session, event) => {
    await deleteCookie(event, 'jwt')
    await deleteCookie(event, 'refresh-token')
  })
})

@PGLongo Awesome! Very kind of you! Thank you very much!

@PGLongo Awesome! Very kind of you! Thank you very much!

Sharing is caring! 😊
If you have any questions or need further assistance, feel free to reach out. Happy coding!

Thank you, @PGLongo, for providing an example implementation of the refresh dynamic!
Inspired by your code, I created a similar plugin that refreshes the tokens when the access token expires. The problem I'm facing is that the sealed session cookie is never updated, so the original contents remain unchanged. After the access token expires the first time, it refreshes the tokens on every subsequent page refresh. Do you have a solution for this issue?
My code:
// server/plugins/session.ts

export default defineNitroPlugin(() => {
  sessionHooks.hook('fetch', async (session, event) => {
    const authenticationConfig = getAuthenticationConfig(event) // Configuration helper
    const now = new Date()
    const expirationDate = new Date(session.expirationDate)

    if (expirationDate < now) {
      // Refresh session
      const body = new FormData()
      body.append('grant_type', 'refresh_token')
      body.append('refresh_token', session.refreshToken)
      body.append('response_type', 'id_token')
      body.append('client_id', authenticationConfig.clientId)
      body.append('client_secret', authenticationConfig.clientSecret)
      body.append('scope', authenticationConfig.scope)

      const token = await $fetch<AccessToken>(authenticationConfig.tokenURL, {
        method: 'post',
        body
      })

      session.accessToken = token.access_token
      session.refreshToken = token.refresh_token
      session.expirationDate = new Date(now.getTime() + token.expires_in * 1000)
    }
  })
})

@PGLongo do you have an answer on the question of @thijsw ? We are really looking forward to it.

@doubleujay and @thijsw are you refreshing the token on server side?

@PGLongo Yes, what I'm trying to accomplish is that the tokens is refreshed server-side (when expired) and the new updated value stored in the encrypted cookie. This new, just retrieved, token should be used by all API calls within the same request cycle. However, using my previous shared code, this doesn't work. The cookie doesn't get updated, so when I refresh the page the old token is being refreshed again. Do you have a suggestion how I could address this?

@PGLongo Is the reply of @thijsw enough to give me insight?

Inspired by your code, I created a similar plugin that refreshes the tokens when the access token expires. The problem I'm facing is that the sealed session cookie is never updated, so the original contents remain unchanged. After the access token expires the first time, it refreshes the tokens on every subsequent page refresh. Do you have a solution for this issue?

I can maybe provide some insight here, dealing with this myself at the moment.
The reason the cookie may not be getting refreshed is because the set-cookie header is not forwarded on fetch calls.
This eventually lead me to a fetch wrapper snippet like this:
const res = await $fetch.raw<T>(request, {
  ...opts,
  headers: { ...opts?.headers, ...useRequestHeaders(['cookie']) },
})

// forward cookies into SSR response
const cookies = (res.headers.get('set-cookie') || '').split(',')
for (const cookie of cookies)
  appendResponseHeader(event, 'set-cookie', cookie)

// Return the data of the response
return res._data

The cookie now get set refreshed properly for me but pressing back on the browser messes this up and theres an nuxt internal error.
All this trouble kind of made me rethink my token flow, I do not see a clean refresh token implementation possible on Nuxt, or SSR flows in general, where server side refreshes are needed.
My conclusion here is to just ditch the refresh flow for a regular access token + auto session extension on activity + revocation flow.
Hope it helps a bit at least :)

Does the refreshCookie util help with the stale cookie issue reported by @thijsw and @daniandl? Documentation is here https://nuxt.com/docs/api/utils/refresh-cookie

Hi, currently also running into the same problem. When I replaceUserSession with new experiationDate the cookie is not updated and the session data also stays the same. Any idea how to replace the session when the refresh token is still valid? Thanks!

@sdevogel are you calling await fetch() from useUserSession() in the client after you replaced the session in the server?

@sdevogel are you calling await fetch() from useUserSession() in the client after you replaced the session in the server?

No, how would the client know that the server replaced the session? Maybe asking for the obvious but I'm a bit lost. Thanks a lot for your help :)

Can we discuss an implementation design to refresh the token here? We use this library in our application, and it’s not ideal for the session to expire while the user is using the app.
I’m willing to create a pull request after this discussion.
@atinux

Well, does this fix your issue?
https://github.com/patrick-hofmann/nuxt-auth-utils/tree/feature/add-server-side-session-storage?tab=readme-ov-file#extending-cookie-lifetime

Thank you for your explanation and code examples @haakonmt
I released https://github.com/atinux/nuxt-auth-utils/releases/tag/v0.5.4 that should improve the useUserSession().clear()during SSR.
I created this middleware in the playground to deal with refresh tokens that works with SSR and make sure that the useFetch and useRequestFetch() requests use the latest cookie: https://github.com/atinux/nuxt-auth-utils/blob/main/playground/middleware/jwt.global.ts
This is how it looks like to apply the updated cookie to the next request happening during the server-side rendering:
import { parse, parseSetCookie, serialize } from 'cookie-es'

await useRequestFetch()('/api/jtw/refresh', {
  method: 'POST',
  onResponse({ response: { headers } }) {
    // Forward the Set-Cookie header to the main server event
    if (import.meta.server && serverEvent) {
      for (const setCookie of headers.getSetCookie()) {
        appendResponseHeader(serverEvent, 'Set-Cookie', setCookie)
        // Update session cookie for next fetch requests
        const { name, value } = parseSetCookie(setCookie)
        if (name === runtimeConfig.session.name) {
          // console.log('updating headers.cookie to', value)
          const cookies = parse(serverEvent.headers.get('cookie') || '')
          // set or overwrite existing cookie
          cookies[name] = value
          // update cookie event header for future requests
          serverEvent.headers.set('cookie', Object.entries(cookies).map(([name, value]) => serialize(name, value)).join('; '))
          // Also apply to serverEvent.node.req.headers
          if (serverEvent.node?.req?.headers) {
            serverEvent.node.req.headers['cookie'] = serverEvent.headers.get('cookie') || ''
          }
        }
      }
    }
  },
})

The only solution I can see for you to avoid doing this is for nuxt-auth-utils to create:

useAuthFetch() composable to replace useFetch
$authFetch util to replace $fetch

It will have another benefit, being able to know when an API request update the session cookie to automatically refresh the user session on the app-side.


Command python setup.py egg_info failed with error code 1 in /tmp/pip-build-9I5o9L/setuptools

I try to get this working on a raspberry pi 4 but i get this error when i use sudo pip install --upgrade setuptools pip wheel

@wuffer : please paste the Error code here. Otherwise we can't assist you ;)

After i use sudo pip install --upgrade setuptools pip wheel. I get this error
Command python setup.py egg_info failed with error code 1 in /tmp/pip-build-Zv1qa_/setuptools

@wuffer Hi, I just tested it with my Pi4.
You need to run this installation steps, the error comes from an outdated PIP installation...
Please make a clean/new Volumio SD-card before proceeding....
sudo apt-get update
sudo apt-get install -y python-dev python-pip libfreetype6-dev libjpeg-dev build-essential python-rpi.gpio
sudo python -m pip install --upgrade pip
sudo pip install --upgrade setuptools pip wheel
sudo pip install --upgrade socketIO-client luma.oled==3.1.0

...and here comes the next error.
luma.core wants to have pytthon 3.5 or above..
ERROR: Package 'luma.core' requires a different Python: 2.7.9 not in '>=3.5, <4'

I ran into this by myself at tthe beginning of the year, and I was not able to solve this problem for python 2.7.9.
@diehardsk Maybe you can investigate this problem?
I try'd to get Volumio-OledUI running, here are my further steps, after the luma error:
sudo apt-get install -y build-essential libc6-dev libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev libncurses5-dev libncursesw5-dev libreadline6-dev libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev
wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz
tar -zxvf Python-3.5.2.tgz
cd Python-3.5.2
./configure && make -j4 && sudo make install
cd
alias python3=python3.5
sudo apt-get install -y python3-dev python3-setuptools python3-pip libfreetype6-dev libjpeg-dev build-essential python-rpi.gpio libffi-dev libcurl4-openssl-dev libssl-dev git-core autoconf make libtool libfftw3-dev libasound2-dev libncursesw5-dev libpulse-dev libtool
sudo pip3 install --upgrade setuptools pip wheel
sudo pip3 install --upgrade luma.oled
sudo pip3 install  requests socketIO-client
git clone https://github.com/diehardsk/Volumio-OledUI.git
chmod +x ~/Volumio-OledUI/oledui.py
sudo cp ~/Volumio-OledUI/oledui.service /lib/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable oledui.service
rebootsudo apt-get update
sudo apt-get install -y python-dev python-pip libfreetype6-dev libjpeg-dev build-essential python-rpi.gpio
sudo pip install --upgrade setuptools pip wheel
sudo pip install --upgrade socketIO-client luma.oled==3.1.0
git clone https://github.com/diehardsk/Volumio-OledUI.git
chmod +x ~/Volumio-OledUI/oledui.py

@diehardsk : at least under python 3.5.2 there are some "bugs" in your code. They prevent the code from running.
@wuffer and @diehardsk The required changes, are as followed:
(use "sudo nano Volumio-OledUI/oledui.py", "sudo nano Volumio-OledUI/modules/display.py" and "sudo nano Volumio-OledUI/oledui.service" to edit the files)
Line 109 - oledui.py must be:
print("render error")

Line 13 - display.py must be:
print("Cannot open file: ", filename)

To use the "autostart" of oledui under python 3.5.2 you need to change Line 7 - oledui.service to:
ExecStart=/usr/local/bin/python3 -u /home/volumio/Volumio-OledUI/oledui.py

After you changed the 3 parts, go on with:
sudo cp ~/Volumio-OledUI/oledui.service /lib/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable oledui.service
reboot

@wuffer : If all this fail, maybe you can try my (upgraded) version of Volumio-OledUI. It is actually running on python 3.5.2 and I'm working on python 3.8.5...
@wuffer please ttry the suggested steps and give feedback

Thank you. I did all the steps. And it worked. I haven't tried the (upgraded) version.
The only thing is if i change the album, it showing the last track but it helps when i press next a few times or remove album from playlist before adding a new.
But it works. :)
https://imgur.com/HOoFiwE

@wuffer : "The only thing is if i change the album, it showing the last track but it helps when i press next a few times or remove album from playlist before adding a new." -> then try my code... this works in NR1-UI
@diehardsk Maybe you'll have a look at your code and fix the Installation Steps and the "album change issue"

@Maschine2501 Hi! Thanks for your support! I've updated code to add parentheses as you pointed out. But I'll keep using python 2.x for now, the luma.core library is hopefully also possible to use its old version to make it work.
@wuffer "album change issue" is hopefully fixed, please upload updated oledui.py and check it.
I'm not sure if I simulated it the same way, it looked like song tile was pushed only in volumio stop state, where I had it restricted for some ancient reason a so I just removed that.

@Maschine2501 I will try yours next week, i do prefer 2 rotary encoders for the look.
@diehardsk It did the trick. It works like it should. :)
I did find another error.
When turning the rotary encoder, after stopping or pushing it, the screen goes black and stays that way.
The left rotary works fine with start/stop, volume and shutdown. :)
I am using 24 steps rotary encoders, so i don't know if its my own fault or its the plugin.

strange, I don't have such problem. The screen is black only when playback is stopped. Number of steps doesn't matter. Could you copy some debug log if there is something?
sudo journalctl -fu oledui.service
And try to clean play queue if there is too many records.

@diehardsk i get this error
Sep 14 05:20:49 volumio oledui[593]: TypeError: Can't convert 'bytes' object to str implicitly
Sep 14 05:20:49 volumio systemd[1]: oledui.service: main process exited, code=exited, status=1/FAILURE
Sep 14 05:20:49 volumio systemd[1]: Unit oledui.service entered failed state.

allright. Problem was happening only with python3 which is more strict in some cases. I believe it works now in python2.7 as well as python3. Please check with your setup wuffer. Thanks.
(oledui.py)

@diehardsk It works perfect :) Thank you.

Great!


S3C-1115 FT: GCP HEAD Req

Adds the GCP S3 service headObject method.

PR has been updated. Reviewers, please be cautious.


Is the project abandoned?

@cboden, could you clarify the project status, please? It looks abandoned, and according to the code frequency chart, the activity has declined to 0 during the last 5-6 years, but a lot of people still use the project, and it requires maintenance and future improvements.
Maybe it's a good option to transfer the ownership if someone is ready to continue the maintenance. As far as I can see, @clue and @SimonFrings had some thoughts about that.
I started one more fork here: https://github.com/plesk/ratchetphp, and fixed a bunch of things to make it compatible and testable on PHP 8.x. At some point, I realized keeping it as a fork made no sense and detached it. There are a lot of stuck pull requests here, and adding several more would not help anybody.
I'll be glad to collaborate, but the project status is unclear, and it looks abandoned.

Hey @sibprogrammer, this is actually a complicated situation here, so I'll try to give you a quick overview.
We're aware about the status of Ratchet and we really want to change some things in here, this includes supporting the latest (PHP) versions, improving the project documentation, answer/review open issue & pull requests, and much more.
So in a gist we know what to do with Ratchet, the problem is that we have to find the time to actually do it. A few years back I decided to make Open Source my job, means I'm investing a lot of time into maintaining projects like ReactPHP, Framework X and others. While Open Source itself doesn't pay the bills (yet), I also help other developers and companies achieving their goals with their projects. This constellation takes up most of my team's time and priorities, and doesn't really allow us to invest time into Ratchet currently (it's sad to say, but it is a tradeoff).
I'm always on the lookout for opportunities to create a overlap between our business interest and our Open Source interest, that's one of the reasons my work with clients mostly involves ReactPHP. This worked pretty great for us in the past and I can see this as a great opportunity to get Ratchet back on track Ratchet.
So as you can see half of my time goes into consulting and the other half into
This is of course easier said than done.
Working on Open Source is part o our
Working on Open Source is not just something we do in our free-
We're putting a  lot of our work into maintaining ReactPHP, Framework X and other projects here in GitHub while also
Easier said than done, maintaining ReactPHP, Framework X already takes up time. Made Open Source to our job/Job resolves around Open Source, of course Open Source itself doesn't pay the bills, so we cover this through working together with developers (consulting), helping maintain commercial projects.
Always looking for opportunities to find some overlap between a companies interest and Open Source work.
A lot to do, bring up to newest versions, way more documentation needed, answering/reviewing amount of tickets, etc.

Did they remove the comment previously posted ?

Hey @sibprogrammer, this is a very interesting question, so I'll try to give you some overview.
We're aware of the current status of Ratchet and we really want to move forward with improving some things in here, this includes supporting the latest (PHP) versions (https://github.com/ratchetphp/Ratchet/issues/1003), improving the project documentation, answer/review open issue & pull requests, and much more. I'm working on this together with @SimonFrings to answer issues & pull request in here when time allows, but there's still a lot to do. So in a gist, we know what to do with Ratchet, the problem is that we have to find the time to actually do it.
Some time ago, I made the decision to make open source my job. This means that I invest a significant amount of time into maintaining projects like ReactPHP, Framework X, and others nowadays. While open source itself may not directly pay the bills at the moment, I also have the opportunity to help various developers and companies achieve their goals with their projects through my consulting service. This arrangement currently occupies most of my team's time and priorities, which unfortunately limits our ability to invest more time into Ratchet at the moment (as much as I'd like to see this change in the future!).
I am constantly seeking opportunities to align our open source endeavors with business interests to ensure we can focus on our open source work to benefit the entire community. That's why my paid work primarily involves ReactPHP and related projects, which has proven to be successful for us over the years. Likewise, I can see this would be a great chance to bring Ratchet back on track if there's enough interest in moving forward with the project.
I see you're actively working on your fork in the @Plesk organization on GitHub, and I believe this could be a wonderful chance to collaborate and join forces. Definitely also seeing some huge wins for the larger ecosystem if we can make sure Ratchet works seamlessly with Plesk.
Apologies for the lengthy explanation, but I figured you might be interested in some of the details behind the scenes. If you're interested in working together with us, shoot me an email and I'm sure we will get the ball rolling again and make Ratchet even more awesome!
(Started writing this reply a couple of days ago but had to shift focus, please ignore the incomplete draft of this message that we accidentally sent a few days ago)

@sibprogrammer i looked at your fork, what autobahn version does it work with ? or do you use a different or custom js client library ?

So sad to hear, another awesome package is not getting updated 2 years from now! Hope this awesome package gets justice. 🙂🤞

Is the project abandoned?

No, it is not 🎉 Please help us revive Ratchet and let's give Ratchet the love it deserves! See #1054 for follow-up.


OracleDb - Problem while using number on binding param

Knex version: 0.21.2
Database + version: oracledb 5.0.0
OS: Linux
@atiertant.
Bug
I was using knex v0.15.0 and  oracledb v2.3.0 - My resources were functional.
Then, recently I noticed a few things that I needed (pretty badly, as you can notice for the lack of updates since..) to update, and I did. So my problem began to appear.
There was no error log to be found... I only noticed this because my cluster workers kept dying after the update and the response were nowhere to be found.
You can try to reproduce by using a Database with a table called P_User with 3 columns. ID, Status and Name: as follows:
-- create table oracledb
CREATE TABLE P_USER
(	"ID" NUMBER(19,0) CONSTRAINT "USER_ID_PK" NOT NULL ENABLE,
	"STATUS" NUMBER(1,0) DEFAULT 1 NOT NULL ENABLE,
	"NAME" VARCHAR2(255 CHAR) NOT NULL ENABLE,
         CONSTRAINT "USER_ID_PK" PRIMARY KEY ("ID")
);

-- insert a few names
INSERT INTO P_USER (Id, Name) Values (1, 'Felipe');
INSERT INTO P_USER (Id, Name) Values (1, 'Adrian');
INSERT INTO P_USER (Id, Status, Name) Values (1, 0, 'Newton');
COMMIT;

// than you should try this
const knex = require('knex')({
  client: 'oracledb',
  connection: {
    host: DB_HOST,
    database: DB_NAME,
    user: DB_USER,
    password: DB_PASSWORD,
  },
  pool: {
    min: 0,
    max: 10,
    afterCreate(conn, done) {
      conn.execute('alter session SET NLS_COMP=LINGUISTIC');
      conn.execute('alter session SET NLS_SORT=BINARY_CI');
      done();
    },
  },
});

const tableName = 'P_User Q';  //<EMAIL_ADDRESS>Q'
const query = knex.from(knex.raw(tableName)); // PS: I'm using this way because of some code that uses a dblink from another schema like the commented above, but the problem is not in the dblink but the query bellow
query.where('Q.STATUS', 1); // this is the problem

I realize that to surpress this problem I could use .toString on my values like this query.where('Q.STATUS', '1');
This is the solution I got. But i kept thinking.. Why this thing have changed?
So I can't do this kind of query with a number? It has to be a string? really or I'm missing something?
Thanks in advance. (sorry for poor english).

What is the problem there:
const tableName = 'P_User Q';  //<EMAIL_ADDRESS>Q'
const query = knex.from(knex.raw(tableName)); // PS: I'm using this way because of some code that uses a dblink from another schema like the commented above, but the problem is not in the dblink but the query bellow
query.where('Q.STATUS', 1); // this is the problem

you are not even executing that query... please add complete reproduction with also an error that you are experiencing.

@elhigu
Ok, you are right, the code should be this:
// aka model part
const searchForActiveUsers = () {
    const tableName = 'P_User Q';  //<EMAIL_ADDRESS>Q'
    const query = knex.from(knex.raw(tableName)); // PS: I'm using this way because of some code that uses a dblink from another
    schema like the commented above, but the problem is not in the dblink but the query bellow
    query.where('Q.STATUS', 1); // this is the problem
    return query;
}

// aka controller part
searchForActiveUsers().then(response => {
    console.log('fromServer: ', response); // doesn't do anything
}).catch(err => {
   console.log('error: ', err);
});

// or

try {
    const response = await searchForActiveUsers();
    console.log('fromServer: ', response); // doesn't do anything
} catch (err) {
    console.log('error: ', err); // doesn't do anything
}

I'm so sorry for not providing this before.. this is not the way that I call knex still.. I'll not bother you guys adding complexity over there.. But our controller part should pass to the model part an object containing Q.STATUS and the value 1 (int) from that part to the model part in an object and we spread the object and use it on the where clause..
// whereElements [ [ 'Q.STATUS', '=', 1 ] ]
whereElements.forEach((where) => {
    const operator = Array.isArray(where[2]) ? 'in' : where[1];
    query.where(where[0], operator, where[2]); // where[2].toString()
});

I can use toString on where[2] which is the value.. I just can't figure out why this stopped working.. Still can't use numbers on where clause..

The same applies with
inactivate() {
    return knex(tableName)
      .where('ID', '1') // I assumed it was on the where function
      .update('STATUS', 0); // this was the reason
  }

Provide some single file reproduction code that anyone can run. Sounds like you are doing something wrong. It will help also for you with debugging if you can isolate the actual minimal code where that is happening.

HI @elhigu thank you for the support... it was an issue with my docker image.. we changed to a different one and it started working again.. thank you for all the help and time that you spend on this with me. :)


[bootstrap-vcpkg.sh] Test for ${CC} rather then gcc on systems using vcpkgUseSystem

Fixes #36807

The test script runs correctly on Linux. Add reviewed tag for further review by the vcpkg team.


Remove amp-form non-XHR post sample

non-xhr post is not allowed:
"non-XHR POST requests are not allowed in AMP documents. This is due to inconsistencies of setting Origin header on these requests across browsers. And the complications supporting it would introduce in protecting against XSRF. This might be reconsidered and introduced later, please file an issue if you think this is needed."
https://github.com/ampproject/amphtml/blob/master/extensions/amp-form/amp-form.md#security-considerations

We have to re-add the action attribute until #5607 is fixed.


feat(in-wallet): allow both .news & .town domain

use ${environment.siteDomain} to construct website link

Still need to strip the protocol https://


Support config updates when adding smart cell deps to Mix.install/2

We will soon want to modify config when adding a smart cell from the UI.

@josevalim sounds good! If they are setting any configuration, they already know what they are doing.

This also simplified it a fair bit!


I Can't Initialize New Disk

Hello,
I find difficulties to "Initialize" my disk partitions when right-clicking the HDD where I want to create more logical separations. E.g.: I want (D:), but after I tried to install Linux all partitions have disappeared, except (C:) for some reason. Anyway, I'm going to bed (z-z-Z). Tomorrow I'll find the answer, but I wouldn't mind if you share your thoughts about that. :)

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

ID: aed88c8d-c15e-9dad-4cf4-9cc92e625f41
Version Independent ID: 3ba55b69-bea2-a674-d08f-e93a03de1ffa
Content: Initialize new disks
Content Source: WindowsServerDocs/storage/disk-management/initialize-new-disks.md
Product: windows-server-threshold
GitHub Login: @JasonGerend
Microsoft Alias: jgerend

What results do you get from using the following PowerShell cmdlets:
Get-DIsk
Get-Volume
Get-Partition

This does not appear to be a documentation error.

Yeah I'm having the same problem, there simply isn't an initialize option when I right click on the drive, and it's not even in the top list, it's on the bottom.

I have the same issue PowerShell for the previous commands not showing any info for the corrupted hard, but the device are showing in Device and Printers window Also showing in Device Manager with correct name

I have the same issue PowerShell for the previous commands not showing any info for the corrupted hard, but the device are showing in Device and Printers window Also showing in Device Manager with correct name

I forgot how I did it but I randomly figured it out awhile ago lol

I have the same issue PowerShell for the previous commands not showing any info for the corrupted hard, but the device are showing in Device and Printers window Also showing in Device Manager with correct name

actually I think I went into my bios and changed the primary boot drive on every setting to my SSD and then reinstalled everything, idk if this helps you but that's what I did

If the Initialize option is not available and the partitions don't appear, you may have to reset the entire drive device and start from scratch (wiping the drive, maybe even using a different computer). Just make sure you either have a backup of things you want to keep, or that the drive does not contain anything important at all.

I tried to do that step but it's show to me access denied, also i tried many of wiping software to solve the issue but Error massage showing to me.
the hard in Hex viewer is READ ERROR

Looks like another case of too many unknown factors there. You should either test that disk in a different computer to find out if it is working at all, or find out if there is anything incompatible in its firmware versus the computer BIOS you are using. Not enough information to tell if that error is caused by hardware or software.

I already test it in another computer, its same issue attached company LifeGuard test result, any idea if can be fixed or not please?

Classic example of defective hardware. "Too many bad sectors detected." -- defective hardware error messages do not become much more clear than that. Please contact your Western Digital vendor regarding warranty options for your harddrive -- it can not be recovered without the use of Data Rescue Equipment -- and the harddrive will likely not be usable even after any data recovery attempt.

#please-close


Cards Handeling

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
There are five cards in the Ambulance Monitoring System, last two cards needs to be aligned i between the page for better visuals and UI

Use Case
This will enhance the UI feature of the project
Benefits
No response
Priority
High
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC contributor
[X] I want to work on this issue
[X] I'm willing to provide further clarification or assistance if needed.

@Harshgupta88156 I want to contrubute in this issue. please assign this issue to me


ECV may only export signs (words)

If option 1 from issue #174 is chosen, then make sure that ECV export does not include morphemes.

This is addressed vacuously, since option 2 of #174 has been chosen.


Add usage example for EfLocalDb

I would like to propose EfLocalDb as an replacement for the document Sharing databases between tests. Or at least add a document that shows it as an alternative.
I created EfLocalDb to address the exact problems "Sharing databases between tests" attempts to work around:

For that sample, each test created a new database. This is a good pattern when using SQLite or the EF in-memory database, but it can involve significant overhead when using other database systems.
https://docs.microsoft.com/en-us/ef/core/testing/sharing-databases

EFLocalDb mitigates this by initially spinning up a template db, then that db is taken offline and a copy the mdf and ldf files are mounted for each test method.

it is important to have appropriate locking to ensure only one thread does the database creation and seeding.
https://docs.microsoft.com/en-us/ef/core/testing/sharing-databases#sharing-the-fixture

No locking is required with EFLocalDb since every test method gets its own sql database based on the current test file and test method. seeding can be done once in the static context https://github.com/SimonCropp/LocalDb/blob/master/pages/ef-usage.md#seeding-data-in-the-template

This requires understanding:
How to safely share objects between tests
When the test framework runs tests in parallel
How to keep the database in a clean state for every test

EFLocalDb handle all this

It can be faster to "clean" the existing database using something like respawn rather than re-create it each time. However, care must be taken to ensure that the database schema is up-to-date with the EF model when doing this.

EFLocalDb handle this efficiently by copying and mounting the template mdf and ldf files. The template db is automatically re-generated when the DB context assembly has changed.

The database connection is disposed when the fixture is disposed. You may also consider deleting the test database at this point. However, this will require additional locking and reference counting if the fixture is being shared by multiple test classes. Also, it is often useful to have the test database still available for debugging failed tests.

EFLocalDb leaves the dbs in place for each method. so any failure for any test can be debugged.

Note that tests within a single class will not be run in parallel. This means it is safe for each test to use the same database connection, even though the DbConnection object is not thread-safe.

EFLocalDb supports running tests in parallel
Full Test
The code to use EFLocalDb is also significantly simpler
public class SharedDatabaseTest
{
    static SqlInstance<ItemsContext> sqlInstance;

    static SharedDatabaseTest()
    {
        sqlInstance = new SqlInstance<ItemsContext>(
            constructInstance: builder => new(builder.Options),
            buildTemplate: async context =>
                {
                    await context.Database.EnsureCreatedAsync();
                    AddItems(context);
                    await context.SaveChangesAsync();
                });
    }

    static void AddItems(ItemsContext context)
    {
        var one = new Item("ItemOne");
        one.AddTag("Tag11");
        one.AddTag("Tag12");
        one.AddTag("Tag13");

        var two = new Item("ItemTwo");

        var three = new Item("ItemThree");
        three.AddTag("Tag31");
        three.AddTag("Tag31");
        three.AddTag("Tag31");
        three.AddTag("Tag32");
        three.AddTag("Tag32");

        context.AddRange(one, two, three);
    }

    [Fact]
    public async Task Can_get_items()
    {
        await using var database = await sqlInstance.Build();
        var controller = new ItemsController(database);

        var items = controller.Get().ToList();

        Assert.Equal(3, items.Count);
        Assert.Equal("ItemOne", items[0].Name);
        Assert.Equal("ItemThree", items[1].Name);
        Assert.Equal("ItemTwo", items[2].Name);
    }
}

Thoughts?

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

ID: cd515f67-3587-6e8e-0a81-6a76cb30a808
Version Independent ID: f9f5275d-1b90-b34d-d39c-228b7f310125
Content: Sharing databases between tests - EF Core
Content Source: entity-framework/core/testing/sharing-databases.md
Product: entity-framework
Technology: entity-framework-core
GitHub Login: @ajcvickers
Microsoft Alias: avickers

@SimonCropp While we appreciate this extension can be useful for people, we don't believe that the docs should not use any specific external package that is not needed, except in cases where that package is something we are recommending everyone use. This wouldn't be the case here, so we believe this is best referenced as an extension for those who want to give it a try.

@SimonCropp While we appreciate this extension can be useful for people, we don't believe that the docs should not use any specific external package that is not needed, except in cases where that package is something we are recommending everyone use. This wouldn't be the case here, so we believe this is best referenced as an extension for those who want to give it a try.


Brazilian Portuguese translation of jQuery waypoints

[ ] Learn how Script Tags and Document Ready Work
[ ]  Target HTML Elements with Selectors Using jQuery
[ ]  Target Elements by Class Using jQuery
[ ]  Target Elements by ID Using jQuery
[ ]  Delete your jQuery Functions
[ ]  Target the same element with multiple jQuery Selectors
[ ]  Remove Classes from an element with jQuery
[ ]  Change the CSS of an Element Using jQuery
[ ]  Disable an Element Using jQuery
[ ]  Change Text Inside an Element Using jQuery
[ ]  Remove an Element Using jQuery
[ ]  Use appendTo to Move Elements with jQuery
[ ]  Clone an Element Using jQuery
[ ]  Target the Parent of an Element Using jQuery
[ ]  Target the Children of an Element Using jQuery
[ ]  Target a Specific Child of an Element Using jQuery
[ ]  Target Even Numbered Elements Using jQuery
[ ]  Use jQuery to Modify the Entire Page

Working on it!

Sorry. I am late with the translation. Having some problems that are consuming a lot of my time.

Closed in favor of https://github.com/FreeCodeCamp/TranslationExpansion/issues/49


Don't allow setting start time to future

Act as web does. If start time is in future set it to same time yesterday.

closed with #2523


Systemd service fails to start on Ubuntu 22.04

Installation process goes fine and does not report any issues:
Copying config file
Config file already exists, skipping
Copying systemd service file
Copying core files
Building virtualenv
created virtual environment CPython3.10.6.final.0-64 in 198ms
  creator CPython3Posix(dest=/opt/throttled/venv, clear=False, no_vcs_ignore=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/root/.local/share/virtualenv)
    added seed packages: pip==22.2.2, setuptools==65.3.0, wheel==0.37.1
  activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator
Requirement already satisfied: wheel in /usr/lib/python3/dist-packages (0.34.2)
Requirement already satisfied: configparser==5.2.0 in /usr/local/lib/python3.10/dist-packages (from -r requirements.txt (line 1)) (5.2.0)
Requirement already satisfied: dbus-python==1.2.18 in /usr/local/lib/python3.10/dist-packages (from -r requirements.txt (line 2)) (1.2.18)
Requirement already satisfied: PyGObject==3.42.2 in /usr/local/lib/python3.10/dist-packages (from -r requirements.txt (line 3)) (3.42.2)
Requirement already satisfied: pycairo>=1.16.0 in /usr/lib/python3/dist-packages (from PyGObject==3.42.2->-r requirements.txt (line 3)) (1.20.1)
Enabling and starting systemd service
All done.

But systemd reports that service failed to start:
throttled.service - Stop Intel throttling
     Loaded: loaded (/etc/systemd/system/throttled.service; enabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Mon 2022-09-26 13:38:28 CEST; 3s ago
    Process: 860570 ExecStart=/opt/throttled/venv/bin/python3 /opt/throttled/throttled.py (code=exited, statu>
   Main PID: 860570 (code=exited, status=1/FAILURE)
        CPU: 58ms

Sep 26 13:38:28 shrx-T480 systemd[1]: Started Stop Intel throttling.
Sep 26 13:38:28 shrx-T480 python3[860570]: Traceback (most recent call last):
Sep 26 13:38:28 shrx-T480 python3[860570]:   File "/opt/throttled/throttled.py", line 22, in <module>
Sep 26 13:38:28 shrx-T480 python3[860570]:     import dbus
Sep 26 13:38:28 shrx-T480 python3[860570]: ModuleNotFoundError: No module named 'dbus'
Sep 26 13:38:28 shrx-T480 systemd[1]: throttled.service: Main process exited, code=exited, status=1/FAIL>
Sep 26 13:38:28 shrx-T480 systemd[1]: throttled.service: Failed with result 'exit-code'.

Running the script locally works fine:
sudo ./throttled.py
[I] Detected CPU architecture: Intel Kabylake
[I] Trying to unlock MSR allow_writes.
[I] Testing if undervolt is supported...
[I] Testing if HWP is supported...
[I] Loading config file.
[I] Starting main loop.

I get the same error message.

are you sure you don't have any debug mode stuff enabled? in some modes throttled will produce output that could be interpreted as an error code and could perhaps cause systemd to assume it failed and end it.

I think I figured out this issue. For some reason the requirements (or dbus specifically as indicated by the errors returned at systemctl) aren't being installed in the venv located by default in /opt/throttled/venv.
To solve this in bash:
$ sudo su - change to root
# cd /opt/throttled/ move to the default location for throttled
# source ./venv/bin/activate activate venv for throttled
# python3 -m pip install -r requirements.txt install requirements
# exit get out of root, can use sudo for the rest
$ sudo systemctl stop throttled.service $ sudo systemctl start throttled.service $ sudo systemctl status throttled.service restart service


Unable to dismiss the webview after 3D Secure authentication - iOS

Describe the bug
I'm using test card 4000 0025 0000 3155 as the payment method, after authentication the 3D Secure authentication in the webview, my screen stuck at the webview with the "Return to merchant" button and the button is not working, i have to press the close button of the webview to dismiss the webview in order to direct myself back to the apps.
I confirmed deep linking works with the schema i am sending for confirmPayment. I tested the deep-link with
1 - pasting the uri safari
2 - command line - xcrun simctl openurl booted
I found similar issues and saw that there were fixes. I'm wondering if the fix needs to be implemented for react-native
https://github.com/ezet/stripe-sdk/issues/79
https://github.com/stripe/stripe-ios/issues/1582
Expected behavior
Deep link into the app works after confirmation is successful/failed
Smartphone (please complete the following information):

Device: iPhone 13 Pro simulator
"@stripe/stripe-react-native": "^0.25.0",

hi! are you passing urlScheme to your StripeProvider?

hi @charliecruzan-stripe, yes
initStripe({
      publishableKey: this.stripePublicKey,
      stripeAccountId: this.stripeAccountID,
      urlScheme: '<myCompany>stripe',
    });

and it is coming back in the deep-link output correctly

Ah i think this is the same as https://github.com/stripe/stripe-react-native/issues/1372, you need to setup return URL handling, see these docs: https://stripe.com/docs/payments/accept-a-payment?platform=react-native&ui=payment-sheet#react-native-set-up-return-url
We'll need to add those to React Native 3d-secure docs

That's payment sheet specific, what im referring to is the handleURLCallback code. sorry for the confusion!

ah perfect ty!


osm2pgsql: 1.9.2 → 1.10.0

Description of changes

Changelog
upstream project changes: https://github.com/osm2pgsql-dev/osm2pgsql/compare/1.9.2...1.10.0

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Priorities
Add a :+1: reaction to pull requests you find important.

I built it manually using
$ nix develop .#osm2pgsq

$ phases="${prePhases[*]:-} unpackPhase patchPhase" genericBuild
$ phases="${preConfigurePhases[*]:-} configurePhase ${preBuildPhases[*]:-} buildPhase" genericBuild

and can confirm that install-gen target doesn't exist
make install-gen
make: *** No rule to make target 'install-gen'.  Stop.

I also checked the changes in source code and I couldn't find anything relevant.

Arch linux is not using this target either - https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=osm2pgsql

Upstream ci is using make install as well - https://github.com/osm2pgsql-dev/osm2pgsql/blob/fbdfef855fdcec4983f8063d40250c3896ad673f/.github/workflows/test-install.yml#L76 . It looks like make install is the way to go.

I guess opencv not found, so no osm2pgsql-gen binary.

I guess opencv not found (instead of cimg), so no osm2pgsql-gen binary, no install-gen target.

Yes ! you are right.
-- Did not find opencv and/or potrace library. Not building osm2pgsql-gen.

When I added opencv to buildInputs I get this
-- Found opencv and potrace library. Building osm2pgsql-gen.

and
make install-gen install

works. Great thanks @sikmir

Result of nixpkgs-review pr 270173 run on x86_64-darwin 1

1 package built:

osm2pgsql


Template cswiki

By simiplifying review dataset logic. It might not be the best way
to do it, feel free to discard this if you disagree
Bug: T188270

Great work, team! 👍


cannot update to latest kernel (from 4.19.104 to 4.19.121)

Environment
Microsoft Windows [Version 10.0.20161.1000]
Ubuntu 20.04
the issue is on WSL2 / currently on dev channel

Steps to reproduce

wsl.exe --update

Expected behavior

should update to 4.19.121

Actual behavior

shows
Checking for updates...
No updates are available.
Kernel version: 4.19.104

Delete that kernel file you have in c:\windows\system32\lxss\tools. In build 20150+ you only need to check for Windows Updates to get the latest kernel. Make sure you have "Receive updates for other Microsoft products when you update Windows" enabled in the advanced options.

@onomatopellan
I've deleted it, now I can't start my Ubuntu 20.04 installation. Checking Windows Update doesn't show anything.

Open an elevated cmd and run wsl.exe --update

@onomatopellan
yes, I have it enabled here:

I was able to debug by following your comment on this issue:
https://github.com/microsoft/WSL/issues/5014#issuecomment-609088197

I had to uninstall the Linux kernel by running this program as you have suggested.

I then installed the msi again from https://aka.ms/wsl2kernel

After that I finally was able to update via Windows Update:

Hopefully, someone finds this post useful in the future, thanks @onomatopellan!

I have receive updates enabled and Im fully updated.
I uninstalled WSL and resinstalled from the MS again.
Still at 4.19.104 -_- any advice?

Same here, wsl just won't update.

Found the fix.  Make sure you join the insider program first, then you will get the update.

@mhzed can you send a link. Im not familiar with it.

No need to join Insider Program if you don't want it. Windows Insider builds may crash sometimes as they are not stable. One could download a Windows Update file from Microsoft Update Catalog. Follow these steps:

Go to this website https://www.catalog.update.microsoft.com/Search.aspx?q=wsl
Click on the Linux kernel version you want.
There will be a popup window. Select the package as per your CPU architecture (mostly x64 one).
It will be downloaded as CAB file. Open it. Extract the MSI file. Install the MSI file.

Voilà 🎊

After 10 days, I can attest that windows insider program does crash very often.  Follow Biswa96's solution instead.

Tried uninstalling the Windows Subsystem for Linux Update but an error is thrown:

The feature you are trying to use is on a network resource that is unavailable.
Click OK to try again, or enter an alternate path to a folder containing the installation package wsl_update_x64.msi in the box below.

There is a dropdown text field to specify Use source:,
Yet regardless where I specify the source, I get an error box:

The file C:\downloads\wsl_update_x64.msi is not a valid installation package for the product Windows Subsystem for Linux Update.  Try to find the installation package wsl_update_x64.msi in a folder from which you can install Windows Subsystem for LInux Update.

Pretty frustrating.  I've tried manually installing WSL2, reinstalling it, which it does reinstall successfully.
But each time I go to System Updates, the WSL update downloads (up to 100% download), but then throws the same old error
There were some problems installing updates, but we'll try again later. If you keep seeing this and want to search the web or contact support for information, this may help: (0x80070643)
I have sunk hours and hours trying to figure this out, but have been unsuccessful.

@cpoptic Did you try this?

I encounter the same problem cannot uninstall 4.19.104, as described in #6613. It seems we need the original 4.19.104 install program msi (during the uninstall processes), but it can't be download from microsoft website anymore...


Use zoneinfo instead of pytz

###Description of the Tech Debt###
We should replace pytz with "zoneinfo" since we're using Python 3.9 and later
See sonarcloud for details:

###Tech Debt Triage#
The purpose of our technical debt triage process is to analyze technical debt to determine risk level of the technical debt and the value in tackling that technical debt.
Risk Value Scoring:

Level
Value

High
3

Medium
2

Low
1

Technical Debt - Risk Types
Level
Value

Business Area Risk - Risk of business area visibility / damage to user experience

Developer Fault Risk - How likely will this tech debt cause a future error related to coding on top of it

System Fault Risk - Risk of system errors or application downtime

Time Scale Risk - Compound risk effect if left alone. How much more difficult to fix or dangerous will this become over time?

Time Sink Risk - How much will this tech debt slow the development process down

TOTAL SCORE:

Sonarcloud details:

In Python 3.9 and later, the zoneinfo module is the recommended tool for handling timezones, replacing the pytz library. This recommendation is based on several key advantages.
First, zoneinfo is part of Python’s standard library, making it readily available without needing additional installation, unlike pytz.
Second, zoneinfo integrates seamlessly with Python’s datetime module. You can directly use zoneinfo timezone objects when creating datetime objects, making it more intuitive and less error-prone than pytz, which requires a separate localize method for this purpose.
Third, zoneinfo handles historical timezone changes more accurately than pytz. When a pytz timezone object is used, it defaults to the earliest known offset, which can lead to unexpected results. zoneinfo does not have this issue.
Lastly, zoneinfo uses the system’s IANA time zone database when available, ensuring it works with the most up-to-date timezone data. In contrast, pytz includes its own copy of the IANA database, which may not be as current.
In summary, zoneinfo offers a more modern, intuitive, and reliable approach to handling timezones in Python 3.9 and later, making it the preferred choice over pytz.


Add code coverage

I will be integrating tarpaulin into the GitHub Actions of the project to run code completion analysis on the tests.

Would we like to use a code coverage service, such as https://codecov.io or https://coveralls.io/ @steffenix?

I do not have any strong opinions on code coverage tool.
I had issues in the past with codecov it was timing out a lot.

The library doesn't compile on mac os.
https://github.com/xd009642/tarpaulin/issues/152


Trivial typo fix

Removed JTS acknowledgment as MAGE no uses WKB simple feature in GeoPackage. https://github.com/ngageoint/mage-android/commit/184ebf78eff78da3a5eb6eaf02b46726ea7ff6e7


Wifi near scanning doesn't work when screen is off

Description
When I use this app, the wifi scanning works only when my screen is on or for a little bit afterwards. Cell tower scanning works fine.
When I used Debug Stumbler for MLS this didn't happen. I could scan for wifi even when in background.
When I compare the permissions of the two apps, Debug stumbler has the right to read internal storage nothing else.
I disabled "ignore wifi-scan throttling", this works fine as long as the app is on the screen.
App variant
full
Version
latest
Device
Huawei P40
Android version
Emui 12 (Android 11)
Logs
No response
New bug

[X] I have checked that this bug has not been reported before

Yes, I have. Cell Towers are scanned fine in background while screen is off.

Alright. By Debug Stumbler, do you mean this: https://github.com/mozilla/DemoStumbler?

I'm not sure. It is this app: https://www.apkmirror.com/apk/mozilla/mozilla-stumbler/mozilla-stumbler-1-8-8-release/

Could be some weireness Huawei devices are doing to save battery. Check out the info here for some troubleshooting steps.

Could be, I guess it is related to Huawei if it works for others.
I use this as a workaround: https://github.com/JonasBernard/FakeStandby But it is a not a good solution.

Hi
I can reproduce this consistently with non-Huawei phone (mine is a Fairphone 3 running DivestOS 20-20240907-dos-FP3).
During my test I was in the street surrounded by tall buildings, and I was barely moving so these readings with 0 APs are not feasible.
Also note the problem doesn't seem to affect GSM or Bluetooth.

Hi
The problem is related to Wifi scan throttling. In my initial test I had Wifi scan throttling disabled since this is the recommended setting. Now I re-enabled it in Developer Settings, then unchecked the "Ignore Wi-Fi scan throttling" setting in the app, and WiFi detection is working even with screen turned off.
I notice that every few reports there's one with 0 Wifi reads, I assume this is normal as it is an expected effect of Wifi scan throttling which is now active.

@lnd-dl Did you have Wifi scan throttling disabled when the problem occurred to you?

I'm on the latest RC, and I have observed 10s of "empty" reports in a row when sitting outside with a clear view of the sky. Can provide screenshots if needed.

Do you have Wifi scan throttling enabled? I would guess this is the normal result in that case. Unless you can reproduce the OP problem, I wouldn't attach these screenshots since it would just add noise due to unrelated info.

Interesting observation @rmh2022. Not sure what is happening there, the only thing that's done on NeoStumbler side regarding Wi-Fi scan throttling is whether to do Wi-Fi scans every 10 seconds or every 30 seconds. I'm guessing this might be some weird battery optimization bug in the OS

I notice that every few reports there's one with 0 Wifi reads, I assume this is normal as it is an expected effect of Wifi scan throttling which is now active.

Yes, that's expected

Strangely enough, I disabled again Wifi scan throttling in Developer settings, and now the problem is not reproducible. Then I re-checked "Ignore Wi-Fi scan throttling" setting in the app, still not reproducible. I can't make sense of this, it might still be related to throttling in combination with another factor (race condition?) but I'm unsure now.
For anyone else experiencing this issue, I would suggest to check if playing with the throttling options makes it disappear, as I'm not really sure if it is related or not.

P.S. When I first reproduced the problem in 2024-09-19, I was in the street, not connected to any Wifi, whereas all the tests I did today I was at home, connected to my Wifi router. It might be related to this. I'll check again next time I go out.

Yup, that was my mistake indeed. Please accept my apologies for sending contradicting info. During the tests I did yesterday I neglected another factor which differed from my 2024-09-19 test: I was at home and my phone was connected to local Wifi router. I've since done several tests, both inside and outdoors, and with different throttling settings, just to be sure.
The problem consistently appears when (and only when) these two factors are present:

phone is NOT connected to Wifi router
screen is turned off

I've verified the following factors to be irrelevant:

Wi-Fi scan throttling settings
Being outdoors, per se. I went extra paranoid this time and checked whether problem appeared: 1) if I turned off the router while inside (problem did happen) and 2) if I stepped out to the balcony, having simultaneously Wifi access to the router and a clear view of the sky (problem didn't happen)

Also note in this post I'm specifically referring to the problem where ALL reports list 0 Wifi reads. I have occasionally also experimented a different issue where occasionally there are some reports with 0 Wifi reads (even when throttling is turned off) but for the purpose of this experiment I'm completely ignoring those. Whenever I say in this post that problem manifests, I'm referring to 100% of the reports being affected.
FTR, this is a Fairphone 3 running DivestOS 20-20240907-dos-FP3 with NeoStumbler version is 1.3.1 (fdroid). Instead of GSF I'm running microG Services <IP_ADDRESS>913 (as unprivileged app).

Great analysis @rmh2022. I think I found the problem: newer Android versions don't allow apps to keep the Wi-Fi on (nor to programmatically turn it on). It seems that some (most?) devices turn off their Wi-Fi when the screen is off and thus Wi-Fi scanning won't work, unless "Wi-Fi scan always available" has been enabled in the device settings. Devices with Google Play Services might have that enabled by default, because Google Play Services uses that for the fused location provider
Does your device have that option available in the settings? If not, the only workaround I can think of is to add support for keeping the screen on in NeoStumbler while the scanning service is active

@mjaakko Glad to assist. I'm afraid I can't find this "Wi-Fi scan always available" setting. Perhaps DivestOS and other alternate OS developers would be amenable to enable/expose it, specially those that rely on microG and by extension the non-GSF location ecosystem that NeoStumbler is contributing to.
OTOH the workaround you propose seems useful. In fact I've already achieved the same effect using Caffeinate, but having this functionality integrated in the same app would make things easier to manage (one less app to interact with).
Thanks for your time and dedication.

Yeah, it would be better for custom ROMs to add that option to the settings, because there are valid use cases for it. I wonder what would happen if an activity was started with the intent to make Wi-Fi scan always available: https://developer.android.com/reference/android/net/wifi/WifiManager#ACTION_REQUEST_SCAN_ALWAYS_AVAILABLE
I'll do #156 first and add an option to try to enable Wi-Fi scanning always available there. If that won't work, I'll add ability to keep the screen on while scanning

@mjaakko Glad to assist. I'm afraid I can't find this "Wi-Fi scan always available" setting. Perhaps DivestOS and other alternate OS developers would be amenable to enable/expose it, specially those that rely on microG and by extension the non-GSF location ecosystem that NeoStumbler is contributing to.
OTOH the workaround you propose seems useful. In fact I've already achieved the same effect using Caffeinate, but having this functionality integrated in the same app would make things easier to manage (one less app to interact with).
Thanks for your time and dedication.

Wow, thanks for the recommendation. Caffeinate together with always on display makes my Huawei device scan Wi-Fi without any problems, even when the screen is locked, for as long as I want it to or the battery will allow it (it drains quite fast). This is much better than 'fake standby' or leaving the screen on all the time, which isn't very practical when you're carrying it around in your pocket.

In the latest rc version, there is a troubleshooting helper in the settings. You can try to enable Wi-Fi scanning to be always available from there. Those with GrapheneOS - could you check what happens when you try to do it?

In the latest rc version, there is a troubleshooting helper in the settings. You can try to enable Wi-Fi scanning to be always available from there. Those with GrapheneOS - could you check what happens when you try to do it?

I'm afraid the problem persists (DivestOS 20-20241011-dos-FP3 running NeoStumbler 1.4.0-rc1/fdroid)

In the latest rc version, there is a troubleshooting helper in the settings. You can try to enable Wi-Fi scanning to be always available from there. Those with GrapheneOS - could you check what happens when you try to do it?

Fairphone 3 user here with LineageOS + microG (not DivestOS). NeoStumbler 1.4.0 troubleshooting panel says everything is ok, but I too don't have the "Wi-Fi scan always available" option in the OS settings and WiFi scanning doesn't happen when the screen is off.

In the latest rc version, there is a troubleshooting helper in the settings. You can try to enable Wi-Fi scanning to be always available from there. Those with GrapheneOS - could you check what happens when you try to do it?

Fairphone 3 user here with LineageOS + microG (not DivestOS). NeoStumbler 1.4.0 troubleshooting panel says everything is ok, but I too don't have the "Wi-Fi scan always available" option in the OS settings or Developer options, and WiFi scanning doesn't happen when the screen is off.

Thanks for the report. It seems that some there are some problematic devices with this. I realized that there might be a workaround for this, but that would need testing with a real device that has this problem. I'll see what I can do


haw-hamburg-bachelor-thesis:0.3.0, haw-hamburg-master-thesis:0.3.0, haw-hamburg-report:0.3.0 and haw-hamburg:0.3.0

I am submitting

[x] a new package
[x] an update for a package

Description: As discussed in #1059 I have put the templates in their own package separated from the main lib package to be able to publish multiple template flavors.

I have read and followed the submission guidelines and, in particular, I

[x] selected a name that isn't the most obvious or canonical name for what the package does
[x] added a typst.toml file with all required keys
[x] added a README.md with documentation for my package
[x] have chosen a license and added a LICENSE file or linked one in my README.md
[x] tested my package locally on my system and it worked
[x] excluded PDFs or README images, if any, but not the LICENSE

[x] ensured that my package is licensed such that users can use and distribute the contents of its template directory without restriction, after modifying them through normal use.

I'm not sure why the tests are failing, everything seems alright. Thank you.


Add "Alternatives" section

@patrickarlt @esoekianto - can you review this new section I'm proposing?

looks good.  i'd recommend linking to the doc on hosted service proxies here too.

Thanks @jgravois - I added the link for the "Working with Proxy Services" topic on developers.arcgis.com

I like this too, I will merge this PR

Thanks @esoekianto


How is the IR image in passive mode (1024x1024) turned into NFOV_UNBINNED mode (640x576)

I am trying to calibrate the IR camera. I captured the checkerboard images for the IR cameras in passive mode (K4A_DEPTH_MODE_PASSIVE_IR), and it has a resolution of 1024x1024, but I captured the actual subject in NFOV_UNBINNED mode, which has a resolution of 640x576. Can someone let me know what is the relationship between the images at two modes? Is it some sort of crop/scale/offset?
I tried cropping 192 pixels on the width for both sides and 224 pixels on the height for both sides on the 1024x1024 image but it's different from the 640x576 image from NFOV_UNBINNED mode.
Related to #921 and #803.

Sounds like you want to recalibrate your device, you can refer to the following SDK code to understand how the crop offset was applied inside the SDK mode specific intrinsics computation. https://github.com/microsoft/Azure-Kinect-Sensor-SDK/blob/90f77529f5ad19efd1e8f155a240c329e3bcbbdf/src/transformation/mode_specific_calibration.c#L95

I manually shift the image pixel by pixel and wasn't sure whether the correct offset is 180 or 179 in the vertical direction. Thanks for confirming it is 180.

Sorry to reopen this issue. I also meet some problems in recalibrating. I am new to the RGB-D camera and calibration process. It would be very nice if anyone could give me some suggestions.
I am trying to recalibrate the color and IR camera (two camera's intrinsic, distortion parameter and two cameras' relative rotation and translation). For the intrinsic and distortion, I can calculate it successfully using OpenCV chessboard calibration. There are two questions about rotation and translation:

Do I need to undistort the chessboard image(both Color and IR chessboard image) before calculating the extrinsic(i.e. rotation and translation between Color and IR camera)?
How to calculate the extrinsic? Is there any tool to use?

Any suggestions will be helpful, thanks very much.
BTW, please let me know if I was supposed to open a new issue.


[Feature Request] update admin password

can we update admin/password of the ui ?
or even more , can we add some other users to login ?

I'd like to know as well since "admin:admin" isn't that safe to run in production environment.

It's in db/server/users.json

It's in db/server/users.json

It's in db/server/users.json

Thank you @visualwritings !!

It's in db/server/users.json

Thank you @visualwritings !!

I know there's a file keep the account/password .
but I think it might be more intuitive and convenient with a simple "user management" to add/delete/update user accounts

I know there's a file keep the account/password .
but I think it might be more intuitive and convenient with a simple "user management" to add/delete/update user accounts

I very much agree @changchichung , my comment was mostly to help out @itsmichaelk .

I very much agree @changchichung , my comment was mostly to help out @itsmichaelk .

Yeah, that actually would be more efficient.. since we needed it asap, I was happy to see @visualwritings answer.. 😅

Yeah, that actually would be more efficient.. since we needed it asap, I was happy to see @visualwritings answer.. 😅

Personally I'd rather have this not handle authentication itself, I'd rather have Authelia/Proxy Handle HTTPS + Authentication than the end application. It saves the developer time, and he can always direct the user to use these if they need ask for it. Even if you go ahead with this, Please DO add support for Remote-User header + disabling inbuilt auth.

Personally I'd rather have this not handle authentication itself, I'd rather have Authelia/Proxy Handle HTTPS + Authentication than the end application. It saves the developer time, and he can always direct the user to use these if they need ask for it. Even if you go ahead with this, Please DO add support for Remote-User header + disabling inbuilt auth.

See PR #67 - it's a quick/dirty solution to set the user/pass combo from ENV on container creation. It does not address allowing for multiple user accounts.
I agree with @Anunayj here that for anything more complex than one admin scenarios that authentication should be handled out of band and that the app should instead support Remote-User header for multiple account authentication. If you're in a scenario where you need multiple admins, you probably have an SSO auth provider that you could easily integrate instead, reducing security vulnerabilities you definitely don't want to have with a VPN configuration tool.
On that vein, adding roles (e.g. admin, user) so that users would be scoped to different access levels might be useful as well. I'm thinking here where the user role might only be able to see their non-disabled configuration(s), an admin role would be able to manage them.

It's in db/server/users.json

where exactly

Created a PR for setting credentials through env vars. Trying to keep it as idempotent as possible ;)
https://github.com/ngoduykhanh/wireguard-ui/pull/90/files

It's in db/server/users.json

where exactly

/op/wgui/db/server


feat(optimizer): change create mv field name

What's changed and what's your intention?

add table name on the schema of the field
if a create materialized view generate multiple same name of a hidden column, it will add a number.

#1363 not really solve the problem, except row id, all columns generated in pk deriving could be not unique.
you can see src/frontend/test_runner/tests/testdata/pk_derive.yaml for detailed case
still to discuss

can we remove the row_id#id now ?
should we need a alias on the expression for those like tumble window field's name in optimizer ?

Checklist

[x] I have written necessary docs and comments
[x] I have added necessary unit tests and integration tests

Refer to a related PR or issue link (optional)

Seems related to #2467, where a unique field name is preferred, and the duplicates originated from different PlanNode.

In #2467, the 2 expr#0s are from 2 different LogicalProjects, one before LogicalAgg and one after LogicalAgg. I tried to dedup them by prepending PlanNodeId but failed to find an elegant way.
The difference is, #2467 only affects field names for debugging. This PR is concerned about column names in catalog, although they are hidden and not selectable by user.
As for tumble window, they already have a user-visible name in bind context, which will be propagated to PlanRoot and then mview column name. But it is not available as schema field name on intermediate PlanNodes.

so we have two kinds of field names

user-visible field names, which are declared in the select clause.
internal-schema field names, which are for debugging and just used in our system

but in create materialized view statement we use both of them. and we should ensure all column name in materialized view is unique

for user-visible column part we can force user to use alias and make sure they are unique.
for the hidden columns we just use the internal-schema field names, but in materialized operator gives the materialized view columns a unique name by give number. And we will not guarantee these columns name. for example a user give create materialized mv1 view select max(v) from t group id; we might give an error that mv1 does not have column id.


DisplayServer.window_get_current_screen error under Linux with SubViewports

Godot version
4.0.Beta3.mono
System information
EndeavourOS. Vulkan.
Issue description
It's been observed when pushing input from an area to a subviewport that "unintended"(?) clicks cause an error to show up under:
  <C++ Source>   platform/linuxbsd/display_server_x11.cpp:1455 @ window_get_current_screen()
  <Stack Trace>  Godot.NativeInterop.NativeFuncs.generated.cs:324 @ void Godot.NativeInterop.NativeFuncs.godotsharp_method_bind_ptrcall(IntPtr , IntPtr , System.Void** , System.Void* )()
                 NativeCalls.cs:3421 @ void Godot.NativeCalls.godot_icall_2_384(IntPtr , IntPtr , IntPtr , Godot.NativeInterop.godot_bool )()
                 Viewport.cs:1379 @ void Godot.Viewport.PushInput(Godot.InputEvent , Boolean )()

Something to note, this only occurs if you click on things that I called "unintended" - If you click on a button or the scroll bar, no errors. If you click on a label, the error is sent. This also only happens when 2 monitors are plugged in, for some reason; if I limit my monitors to one, there is no issue. This might also be my code? Or some weird mix of everything.
Steps to reproduce

Load up sample project.
Play Game.tscn (default project)
Click around the mesh instance and observe the errors noted above (If you click on a button or a scroll container, no errors. If you click on a label or scroll on a label, error.)

Minimal reproduction project
Viewport-issue.zip

Please create a minimal reproduction project in GDScript instead of C# for two reasons:

Non-Mono builds of Godot are easier to set up and have less moving parts.
This rules out C# being the cause of the bug.

Viewport-issue-gdscript.zip
The y is a little backwards, but the issue remains in GDScript. Apologies for the delay!


Migrate project list to separate config file.

Storing the project/favorites list in the EditorSettings makes it
difficult to version-control your editor configuration, as the file will
continually change as you open new projects. It also means a
configuration can't be shared across machines, as they might not have
the same projects or file layout.
Now the project list is stored in $godot_data_dir/projects.cfg.
Each path is a section, which has a boolean favorite value.
If the new config does not exist, the editor attempts to migrate legacy
EditorSettings-based configuration to the new file.
Fixes godotengine/godot-proposals#1637.

Thanks!


Disable Guillotina tests on Travis.

The Guillotina tests started to fail on Travis without any change in the repository. I have no idea what's wrong or how to fix it. In order to being able to move on we have to disable the Guillotina tests for now.
I re-ran the last master build that was green to prove something outside the code repo must have changed to make the build fail.
After re-running
https://travis-ci.org/plone/volto/jobs/650499720
the build was red.

As far as I can see the bug is introduces by volto as it fails running server.js:
Creating postgres_test ...
    at ChildProcess.onClose (/home/travis/build/plone/volto/node_modules/start-server-and-test/src/index.js:68:14)
    at ChildProcess.emit (events.js:321:20)
    at maybeClose (internal/child_process.js:1021:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:286:5)
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

@bloodbare as said I re-run a master Travis job that was passing before. After re-running it failed with the error above. This is proof that nothing in the repo causes this problem. So this bug is definitely not introduced by Volto. The only remaining possible reason is that something changed on Travis.


v<IP_ADDRESS>

<IP_ADDRESS>

Rank N typing (see https://github.com/granule-project/granule/blob/dev-minor/examples/rankN.gr)
Algebraic effects and handlers. See e.g.,

https://github.com/granule-project/granule/blob/dev-minor/examples/effects_nondet.gr
https://github.com/granule-project/granule/blob/dev-minor/examples/effects_state.gr

Updated standard docs
Fixes to deriving copyShape and drop combinators
Minor tweaks to the Granule Language Server to improve vscode interaction (no longer complains on the entire file about 'Premature end of file' whilst typing).

@jackohughes is everything in here regarding the latest tweaks to synthesis?

@starsandspirals can we put the latest fractional work in this release too?

We can save that for another release. Going to do this one now and we can make a <IP_ADDRESS> with the updates there


fixed mc solution notebook

Fixed the finite MC solution notebook to the new style of creating MarkovChain instances and calling MC related functions.  Was broken but now runs.

Thanks @jstac!


S3 GetBucketAcl and GetObjectAcl do not return Grantee Type

The S3Client methods GetBucketAcl and GetObjectAcl do not set the Grantee Type field in the returned access control list. The Type is returned by AWS in an xsi:type attribute as shown below. The Type is required for any subsequent calls to PutBucketAcl/PutObjectAcl so not including it results in an incomplete ACL.
<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
Example C++ code that exercises GetBucketAcl and GetObjectAcl is available in my repo.

Thank you. PR is welcomed.


Redeem reward notifications needs improvement

Redeem reward notifications are not much readable as it overlaps the keyboard. If we use black or white background for keyboards it will not easily noticed. My suggestion is to make the redeem reward notification come above the keyboard to make it more readable.
Steps to reproduce
1.Click Rewards and enter a custom code and press redeem
Expected behaviour
Make reward notification come in top of the screen with a much more black or white overlay.
Actual behaviour
Reward notification is showing below in overlapping keyboard which is not much readable on specific cases. I am attaching screenshots for that.
System Configuration

Device: Nokia 6.1 Plus
Android version: Android Pie

Anything Else

Screenshots
https://ibb.co/GFyR3rf
https://ibb.co/CsPHGVY
https://ibb.co/0fk5T49
Internal Use
Acceptance Criteria

Definition of Done

[ ]  Tested against acceptance criteria
[ ] Tested against the assumptions of the user story
[ ] The project builds without errors
[ ] Unit tests are written and passing
[ ] Tests on devices/browsers listed in the issue have passed
[ ] QA performed & issues resolved
[ ] Refactoring completed
[ ] Any configuration or build changes documented
[ ] Documentation updated
[ ] Peer Code Review performed

Hey @toktoakhil. Thank you for your issue report. We display notifications using Android's default toast notifications, which makes use of the default device theme. Unfortunately, there isn't much we can do here.

Can you make the keyboard vanish when we click on redeem button.

@akinwale is the above possible?


ENH: Add wrappers for ?GGLSE, ?(HE/SY)CON, ?SYTF2, ?(HE/SY)TRF

Closes #3136
(via adding ?GGLSE)
Also removed some compilation noise by removing unused variables about " u1,vt1 set but not used ".
The remaining ones are included as per the discussion in #7847.

@zerothi You can pick up from here.

@ilayn would be good to add some tests.
Given that this is needed for fixing the solve regression, I'd like to get this merged before branching. The solve issue itself can be fixed later and backported, but I'd prefer not to backport this PR.

@rgommers Yes, slowly I'm stealing parts from #6831 😄 I just didn't have time yesterday. Today hopefully I'll add them.

A couple of PEP8 issues that TravisCI isn't happy about:
scipy/linalg/tests/test_lapack.py:755:64: E241 multiple spaces after ','
scipy/linalg/tests/test_lapack.py:756:64: E241 multiple spaces after ','
scipy/linalg/tests/test_lapack.py:757:64: E241 multiple spaces after ','
       E241 multiple spaces after ','

@rgommers I've fixed the PEP8 parts and since other tests passed I've used [ci skip] in the commit.

@ilayn since this all works and just needs some comments or cleanup, I'm going to merge it now to get it into the beta release. Can you submit any touchups as a separate PR?

And thanks!

Ah sure, sorry I got carried away by some other stuff. Can I just open a new PR or should I wait for the branch?

Just a new PR against master would be great.


Allow for restart without using parent/child processes.

Description:
Simplify restarts using just the 'exec' part of fork and exec.
Assuming that we normally correctly shut down running threads and release resources, we just do some minimal scrubbing of open file descriptors and child processes which would normally stay around across an exec() boundary.
In case exec fails we return 100, which means that systemd could be set up to handle the restart automatically if we set RestartForceExitStatus=100 in the systemd.service file.
Only tested on Linux, should work on MacOS X and aside for not cleaning up stray child processes "should" work on Windows.
Related issue (if applicable): #
Example entry for configuration.yaml (if applicable):

Checklist:
If the code does not interact with devices:

[x] Local tests with tox run successfully. Your PR cannot be merged unless tests pass
[ ] Tests have been added to verify that the new code works.

It didn't work on Mac. Looks like we killed ourself?

Yes indeed. Well technically we shouldn't really have any child processes if we cleaned up things right, and we can't kill them on windows anyway so maybe we could just ignore that bit. Worst case some zombies will hang around until the process is stopped for real and init can collect them.

Can confirm that it works on OS X. Let's get a Windows user to test this out.

I just tested it, both the stop and the restart service aren't working anymore, while they still do in the dev version

What's happening instead, console hangs?
On Tue, Apr 12, 2016, 07:33 Bart274<EMAIL_ADDRESS>wrote:

I just tested it, both the stop and the restart service aren't working
anymore, while they still do in the dev version
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub
https://github.com/balloob/home-assistant/pull/1793#issuecomment-208936059

It just kept running normally which makes me think it got stuck waiting for threads to stop. There are no significant changes in homeassistant.core that I can see breaking stop as well.

now it did run a bunch of pip installs because of the lib->deps directory change, so that could have affected windows' ability to exit the main loop.

That's the thing, nothing happens. It gets logged that the restart service is being called but then HA keeps working like it did before.

Op 12 apr. 2016 om 16:48 heeft Paulus Schoutsen<EMAIL_ADDRESS>het volgende geschreven:
What's happening instead, console hangs?
On Tue, Apr 12, 2016, 07:33 Bart274<EMAIL_ADDRESS>wrote:

I just tested it, both the stop and the restart service aren't working
anymore, while they still do in the dev version
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub
https://github.com/balloob/home-assistant/pull/1793#issuecomment-208936059

—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub

I'll try it again tomorrow and I'll report back 😉

Op 12 apr. 2016 om 16:51 heeft Jan Harkes<EMAIL_ADDRESS>het volgende geschreven:
now it did run a bunch of pip installs because of the lib->deps directory change, so that could have affected windows' ability to exit the main loop.
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub

Found this bug report when Googling around about this PR: http://bugs.python.org/issue9148

It doesn't seem like there is a proper fix under Windows 😞
We could limit this PR to only act like this on OS X + Linux and not support restarting on Windows. The forking is causing issues with double running instances (breaking HTTP). We could I guess also be more strict about ctrl+C and always try to do a clean exit.

It also makes it harder to debug with pdb etc. If the exec doesn't work, and we can explicitly disable it on windows, we return with exit code 100, so a nanny type process could handle restarting in that case. I was thinking of adding a startup flag (--runner ?) to enable this because this functionality is provided by systemd/supervisord and various other daemon runners.
It might be possible to create a really trivial 10 line daemon-runner that windows users can use if they want restart functionality and only expose exit functionality otherwise. I'll try to whip something up tonight.

This looks good (as far as that I get it!). We should again make sure this runs on Windows.
Do you think we should try to get this into 0.18 or merge it right after the release so it can be vetted?

I'm getting this on windows:
Traceback (most recent call last):
INFO:homeassistant.components.http:Starting web interface at http://<IP_ADDRESS>:80
  File "C:\Program Files (x86)\Python35-32\Scripts\hass-script.py", line 9, in <module>
INFO:homeassistant.core:Timer:starting
    load_entry_point('homeassistant==0.18.0.dev0', 'console_scripts', 'hass')()
  File "g:\malazan\homeassistant\home-assistant-code\homeassistant\__main__.py", line 392, in main
    exit_code = setup_and_run_hass(config_dir, args)
  File "g:\malazan\homeassistant\home-assistant-code\homeassistant\__main__.py", line 295, in setup_and_run_hass
    exit_code = int(hass.block_till_stopped())
  File "g:\malazan\homeassistant\home-assistant-code\homeassistant\core.py", line 97, in block_till_stopped
    signal.signal(signal.SIGHUP, restart_homeassistant)
AttributeError: module 'signal' has no attribute 'SIGHUP'

Clearly not 0.18 material. I guess at some point I am going to have to start looking to install windows in a VM or something so I can iterate more quickly.

Microsoft has your back with ready to download images:
https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/
On Wed, Apr 20, 2016 at 12:26 PM, Jan Harkes<EMAIL_ADDRESS>wrote:

Clearly not 0.18 material. I guess at some point I am going to have to
start looking to install windows in a VM or something so I can iterate more
quickly.
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub
https://github.com/home-assistant/home-assistant/pull/1793#issuecomment-212568800

--
PaulusSchoutsen.nl
It's nice to be important but it's more important to be nice.

My Docker image won't start with this:
root@Tower:~# docker run -it homeassistant/home-assistant:dev
Traceback (most recent call last):
  File "/usr/local/lib/python3.4/runpy.py", line 170, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/local/lib/python3.4/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/usr/src/app/homeassistant/__main__.py", line 406, in <module>
    sys.exit(main())
  File "/usr/src/app/homeassistant/__main__.py", line 396, in main
    os.setpgid(0, 0)
PermissionError: [Errno 1] Operation not permitted

Interesting, it must already be a process leader when launched in docker. We can catch and ignore that permission error.

This should ignore the permission error, but I would like to know if restart still works as expected in a docker container after this patch is applied.
https://github.com/home-assistant/home-assistant/compare/ignore-setpgid-error

Getting the same issue as @nkgilley. I am not in Docker but a virtualenv.

This issue has been fixed by @jaharkes's #2118 PR.


Avoid empty updates

Is your feature request related to a problem?
Mastodon syndication stopped working for me in the last few months, using 1.0.0-beta.2. I have updated to 1.0.0-beta.4 but also changed my GitHub token and the retries seem to have stopped. I have not diagnosed why syndication is failing, that's not the point.
The problem I report is that IndieKit continued trying, over and over, to syndicate a post for weeks without me noticing. And every time it did, it committed an update to the GitHub store with a new updated field in the frontmatter. Despite there being no actual update except for that timestamp.
Describe the solution you’d like
Just don't write a new updated field when nothing has changed.
Describe alternatives you’ve considered
Better error handling and logging would be great, but I'm trying to target this issue onto the source of my woe.
Additional context
I've rebased away thousands of commits, but just used the web UI to attempt a syndication, which failed once and performed an example commit

Hey @gerwitz. Gah, how annoying! So sorry about this. I had come across this issue myself, but not to the extent you have here. Take a look at #641, I think this should work. Once this is merged I release a new beta, before biting the bullet and trying to get to the bottom of these syndication woes.


cudnn: bad param

Hello,
I'm trying to recreate the 16 layer VGG model in chainer. It works fine with cudnn disabled. If cudnn is enabled then I get the following error
Traceback (most recent call last):
  File "./chainer-vggnet.py", line 162, in <module>
    loss, acc = model.forward(x_batch, y_batch)
  File "./chainer-vggnet.py", line 107, in forward
    h = F.relu(self.conv11(h))
  File "build/bdist.linux-x86_64/egg/chainer/function.py", line 166, in __call__
  File "build/bdist.linux-x86_64/egg/chainer/function.py", line 228, in forward
  File "build/bdist.linux-x86_64/egg/chainer/functions/convolution_2d.py", line 195, in forward_gpu
  File "build/bdist.linux-x86_64/egg/chainer/cudnn/libcudnn.py", line 1136, in cudnnGetConvolutionForwardWorkspaceSize
  File "build/bdist.linux-x86_64/egg/chainer/cudnn/libcudnn.py", line 290, in cudnnCheckStatus
chainer.cudnn.libcudnn.cudnnStatusBadParam

This is with chainer 1.1.2, cuda 7.0 and cudnn v3. The model looks like this
            conv1=F.Convolution2D(3, 64, 3, pad=1),
            conv2=F.Convolution2D(64, 64, 3, pad=1),

            conv3=F.Convolution2D(64, 128, 3, pad=1),
            conv4=F.Convolution2D(128, 128, 3, pad=1),

            conv5=F.Convolution2D(128, 256, 3, pad=1),
            conv6=F.Convolution2D(256, 256, 3, pad=1),
            conv7=F.Convolution2D(256, 256, 3, pad=1),

            conv8=F.Convolution2D(256, 512, 3, pad=1),
            conv9=F.Convolution2D(512, 512, 3, pad=1),
            conv10=F.Convolution2D(512, 512, 3, pad=1),

            conv11=F.Convolution2D(512, 512, 3, pad=1),
            conv12=F.Convolution2D(512, 512, 3, pad=1),
            conv13=F.Convolution2D(512, 512, 3, pad=1),

            fc1=F.Linear(512, 512),
            fc2=F.Linear(512, 10)

Thanks

oops, my mistake :)

What was the solution?


linuxPackages.nvidiaPackages.{production,latest}: amend branches

Description of changes
It appears that sometime after #290938 was made nvidia decided they didn't want to update their production branch and moved the update to the latest branch.
I thought I was going crazy when checking for the latest updates, but since @mrdev023 made a screenshot in the abovementioned PR it looks like nvidia tried to quietly fix an oopsie.
This reverts production to 535.154.05, latest and beta will be unaffected.
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

For additional fun: currently their official driver archive lists the wrong new-feature-branch version and if you search for the 3000 series drivers it lists 550.54.14 as a recommended driver, not an NFB driver.

And now production is 550 again, but their current releases forum post doesn't agree.
Leaving it as it currently stands, if people want to use the new driver, use the latest branch.


How edit the text in the Option Menu

Hey folks,
I don't know if this is the correct way or place to ask this question, but I had a small request that should the dev or someone with the knowledge find the time to answer would be awesome.
I wish to edit the text in the TMPE options menu (the one you can access in the main screen before you start play). These changes would aesthetics, like changing the wording of a drop down menu (which is what I have in mind). I don't intend to make any changes to the code or functionality.
I can code and know how to use atom and other ides so all I really need is to know where the files that deal with this are stored OR if the program pull strings from a main string file that would good to know where and how I could access it.
Thanks for any help and I hope this isn't to much of a pain.

Hi,
we use Crowdin to translate everything in the mod.
Quick tutorial you can find in our wiki/Localisation

Hi,
we use Crowdin to translate everything in the mod.
Quick tutorial you can find in our wiki/Localisation

Alright that is good information to know. However, from what I gather this would an official change. However, what I intend is not a translation. It is a personal aesthetic wording change that I wish for myself. Considering that the game can run offline I assume TMPE has a local store of in game wording that it pulls.
Also thank you for adding the relevant tag.

Resources like language files are embedded into final dll and read at runtime :)

language files are embedded into final dll

ok this is going to sound like a noob question, but is there a way to edit that locally?

You need to compile it from sources, afaik there is no other option

You need to compile it from sources, afaik there is no other option

welp. I am assuming there isn't a wiki for that. Sigh

Yes there is, Building_from_source :)

actually I found the files in question in the code. Gonna see if I can find the thing I want to change. Then gonna worry about compiling it and loading it into steam. (that should be fun)

Ok I found the relevant changes in the Options.csv.
If you have any tips as to how to compile and load to steam please let me know,
Also want to say a big thank you. This helped me a lot and I really appreciate it.

Had one more issue, so I was messing around with "Gameplay.Dropdown.Option:" in the Options.csv to change what that says. However, whenever I make a change instead of using what I typed in to Gameplay.Dropdown.Option: someName x%
(i used variables to show a general form)
Is there a fall-back the mod uses that I need to change as well?

Just remove what you don't need, with all references.
I don't get it why you need that 🤔
What's the use case?

Closing due to inactivity.


Remove the ? in the URL when there are no optional parameters

When no optional parameters are given, there is no need for the question mark at the end of the URL.
That question mark should not be in the returned URL value when no optional parameter values are given to the constructor.

New contributors: This is in the /gravify/__init__.py file.

If you’d like to work on this, please comment here before you start so others don’t start on the same thing. Also, make sure to update the test file (/tests/test_main.py).

hi @bsoyka, I would like to take this one

Hey! can I work on this one?

Sorry, @anuragjain0610, but another user started this before you. If you’d like, you can try another issue here with the “help wanted” label.


Last Week in Pony - May 28, 2017

https://github.com/ponylang/ponyc/pull/1925

Audio from the May 24, 2017 Pony development sync meeting is available. Lots of conversation during the development sync about Joe's RFC to improve the performance characteristics of string concatention. We also had a good discussing arising from the stateful exceptions RFC.


⚠ Bofrost.at has degraded performance

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

HTTP code: 200
Response time: 1324 ms

Resolved: Bofrost.at performance has improved in 04ef609 after 8 minutes.