text:
create 1091-shortestpath-in-binary-matrix.cpp

File(s) Modified: 1091-shortest-path-in-binary-matrix.cpp
Language(s) Used: cpp
Submission URL: _https://leetcode.com/problems/shortest-path-in-binary-matrix/submissions/1160811958/_

Note: I have used the same logic as it was described in the youtube video. Thanks!
Important
Please make sure the file name is lowercase and a duplicate file does not already exist before merging.

Leetcode Question 787. Cheapest Flights Within K Stops
Previous Solution Provided: Github Solution
New Solution Added : Submission Link
Neetcode video: YT Link

Your solution for both looks great!
However, I want to suggest a small edit for 787. Cheapest Flights Within K Stops problem.
There is already a solution using Dijkstras, and it is also a valid way to solve it so we do not need to delete it.  It is always good to keep other ways of solving a problem, but the first solution in the file should always be the one following the video. And use of commenting to avoid any confusion,
I would suggest that you edit the file to add yours while keeping the other solution. You can put yours first (Since it is the one following the video solution) and put the other solution below. They should be separated in two Solution classes, should look something like this:
// Your solution here, bellman-ford....
class Solution {
    int findCheapestPrice() {
        // ...
    }
}

// Other solution here, dijkstras....
class Solution {
    int findCheapestPrice() {
        // ...
    }
}

Thanks @a93a for the review I had done the necessary code  changes.

Thank you @adityaiiitr ! I have merged this now.

@adityaiiitr Please feel free to create seperate PR for each Leetcode problem in the future, this makes it easier to read & review :smiley:

repo: neetcode-gh/leetcode


text:
Create 0300-longest-increasing-subsequence.swift

File(s) Modified: 0300-longest-increasing-subsequence.swift
Language(s) Used: swift
Submission URL: https://leetcode.com/problems/longest-increasing-subsequence/submissions/1435000268/

Important
Please make sure the file name is lowercase and a duplicate file does not already exist before merging.

@drxlx Thanks for your contribution 👍 . Would you be interested in having Collaborator permission? You've made over 100 PRs for this repo.
That way, you won't have to wait for me or other Collaborators to review your PR.

source: gharchive/pull-request

license: MIT

license_type: permissive

license_source: github-api


text:
🛑 OP Financial Group is down

In 875ad52, OP Financial Group (https://www.op.fi/home-page) was down:

HTTP code: 0
Response time: 0 ms

Resolved: OP Financial Group is back up in ebff451 after 1 day, 1 hour, 6 minutes.

source: gharchive/issue

repo: neighbourhood-cyber/espoo-watchtower


text:
:wrench: Make Stylelint work

Suddenly it turned out that commands such as npm run lint and npm run fix do not pay attention to SCSS files. Although it seems that they should! These commands access stylelint and we have a .stylelintrc configuration file.
We are looking for a hero who can figure out what the problem is and fix it.

Simply add to your package.json scripts "lint:css": "stylelint \"src/**/*.{vue,scss,css}\"",

In general, we have calls to stylelint in lint and fix scripts. It turned out that stylelint just doesn't know how to fix some things. For example, spaces before a semicolon or extra indentation. So there is no need to fix it, it works as best as it can. For a clean fix of SCSS files, we can simply run Prettier.
Thank you @antongospod.

authors: antongospod nelkor

repo: nelkor/passcryptum


text:
[FEATURE] Add possibility to send different mosaics

I like the idea in the last call where the faucet can accept community donated mosaics.
In the readme at the bottom the community faucet address could be mentioned with a call for donation mosaics.
For a community member to get a mosaic, there could be a dropdown. By default XYM is selected. For those that select another mosaic, we could have options like to just hardwire in giving the user 100 tokens, or we could do something like "get current supply, then time by 0.001, then donate the result".

Please, @AnthonyLaw, note about spam.
We should make sure there is a possibility to configure a black list ; whenever one of the mosaics should be dropped. (Could happen with spammy mosaics sent just for troll/attack)

Tasks list for this issue :

[ ] Mosaic selector should contain all mosaics available in /account/FAUCET_ADDRESS
[ ] Add build/deploy configuration (could be an "env" variable or a config if already present.) for BLACKLIST_MOSAIC (blacklisting mosaic ids)
[ ] Filter out any blacklisted mosaic from the selector values.

Thank for list down, working on it 👍

I had a follow up idea. Right now the concept is to have a drop down and a person can select what mosaic, but if we just automatically auto fill the first box statically with XYM and freeze it, then we could add a line that said “add mosaic” in plain text under it. Then after clicking it, a person could have a choice of mosaics chose from. And then there would still be another “add mosaic” text underneath the second mosaic selection so a person could add a third. And so on for the forth.
By doing this, all of a sudden our faucet shows off the power of aggregates. I’m also 90% sure that will definitely increase the requests for mosaics on the testnet which is good thing. And it would follow the exact same UI/UX as the wallet which would help to ease users into sending and unify the experience across apps.

@jabo38 i think yeah, that is good idea.
I created new Issue to track this task.

Merged in to main

authors: AnthonyLaw evias jabo38

repo: nemfoundation/symbol-faucet


text:
Some fixes

Fixed postgresHost
Fixed unused value in default values
Added TLS example to default values

@nemonik Please review :-)

repo: nemonik/taiga-helm


text:
Question About Account Filter

hi guys,
one question about account filter in the following section.
nem2-docs/source/concepts/account-filter.rst
what's the difference between left-side circle and right-side circle in the diagram(concepts-account-properties-array.png)?
both circles show that account receive txs from the addresses in "Allow" circle and don't receive txs from other addresses, right?
would be grateful if you would let me know the difference .
thanks!

Hi @ryo-opening-line,
Thanks to your comment, we have noticed that allow and block arrays are mutually exclusive. The next commit will have the image updated image and a more detailed explanation.
The "bison" branch is work in progress. Don't take any information as final until is merged to master branch.


text:
Suggestions to improve AccountProperties

Feedback after using the feature AccountPropertyTransaction:

AccountPropertyTransaction.createAddressFilter could  be created with a different class (e.g. "FilterModification" or just "Filter"). The reason behind is to follow the same approach already implemented in MultisigCosignatoryModification when sending a multisig transaction.

Current approach
const filter = AccountPropertyTransaction
    .createAddressFilter(
        PropertyModificationType.Add,
        Address.createFromRawAddress('SC5DT5Y4DZ7ATYFSWSUX76FAWL6O4ZS2UZ5QSCWF')
    );

Proposed approach
const filter = new FilterModification(
    PropertyModificationType.Add,
    Address.createFromRawAddress('SC5DT5Y4DZ7ATYFSWSUX76FAWL6O4ZS2UZ5QSCWF')
);

or
const filter = FilterModification.createForAddress(
    PropertyModificationType.Add,
    Address.createFromRawAddress('SC5DT5Y4DZ7ATYFSWSUX76FAWL6O4ZS2UZ5QSCWF')
);

createEntityTypeFilter(modificationType: PropertyModificationType, entityType: number) accepts a number as an entityType parameter. To reduce typing errors, it would be better to limit the parameter to the TransactionType enumeration.

Fixed. should support both constructor / static method creation.


text:
README could use some polishing

It has grown organically and now:

The structure is confusing
Some headers have colons
Some language is too familiar

Low priority, though.

Yes, I agree. I kind of hacked it together.
I'm not sure if we need the key benefits anymore. Maybe the usage should go above concepts?
Custom presets example would keep growing. Each time I get a use case that can be fairly general I'll create a new custom preset example for reference. Maybe custom prests could have its own page like the commands?
Would you like to PR one @segfaultxavi ? Open to ideas.
We could start after merging https://github.com/nemtech/symbol-bootstrap/pull/36

I assigned the issue to myself so I could take care of it later, no worries. I'll provide a PR at some point :)

authors: fboucquez segfaultxavi

repo: nemtech/symbol-bootstrap


text:
RE: Running llm-graph-builder / Documentation / Debugging

Hi, I am excited about trying out Neo4J's LLM Graph Builder, but need help and/or documentation on running it. I am using a clone of this repo from October 20.
I have set up a free-tier Neo4J Aura account and have connected to a running instance.
I have the LLM Graph Builder running via Docker and the Frontend connects to the Aura instance: neo4j+s://878a3532.databases.neo4j.io:7687
I have everything configured to use OpenAI and Diffbot. API keys are entered etc.
I have successfully uploaded various types of files: Wikipedia pages, YouTube videos, and Stackoverflow (SO) pages.
I started testing with the example SO schema using seven uploaded SO pages. BUT, no matter what I do whenever I try generating a graph the processing fails almost immediately after beginning. This for any kind of LLM model, and set of data I utilize, and whether I set a Graph Schema or not.
Very frustrating, as I must be missing something basic. Everyone else seems to be able to generate graphs by simply uploading files and then hitting "Generate Graph".
I cannot submit any of the alerts as the displayed toast popups show for about a second and then disappear. Looking at the Docker Logs and there are many, many warnings/errors like:
2024-11-02 12:33:37 backend   | 2024-11-02 19:33:37,536 - Received notification from DBMS server: {severity: WARNING} {code: Neo.ClientNotification.Statement.UnknownRelationshipTypeWarning} {category: UNRECOGNIZED} {title: The provided relationship type is not in the database.} {description: One of the relationship types in your query is not available in the database, make sure you didn't misspell it or that the label is available when you run this statement in your application (the missing relationship type is: IN_COMMUNITY)} {position: line: 45, column: 47, offset: 1162}

2024-11-02 12:33:37 backend   | 2024-11-02 19:33:37,536 - Received notification from DBMS server: {severity: WARNING} {code: Neo.ClientNotification.Statement.AggregationSkippedNull} {category: UNRECOGNIZED} {title: The query contains an aggregation function that skips null values.} {description: null value eliminated in set function.}

2024-11-02 12:33:37 backend   | 2024-11-02 19:33:37,536 - Received notification from DBMS server: {severity: WARNING} {code: Neo.ClientNotification.Statement.UnknownRelationshipTypeWarning} {category: UNRECOGNIZED} {title: The provided relationship type is not in the database.} {description: One of the relationship types in your query is not available in the database, make sure you didn't misspell it or that the label is available when you run this statement in your application (the missing relationship type is: HAS_ENTITY)}

2024-11-02 12:33:37 backend   | 2024-11-02 19:33:37,536 - Received notification from DBMS server: {severity: WARNING} {code: Neo.ClientNotification.Statement.FeatureDeprecationWarning} {category: DEPRECATION} {title: This feature is deprecated and will be removed in future versions.}

Any advice to share, documentation that I can read, examples I can run without fail?
Thanks in advance, with much appreciation.
Steve

Hi @stevexm can you share the error message that you are getting while processing the file

Hi Kartikpersistent: thank you for your help and many apologies for my delay in replying. Time has gotten away from me on this project.
The error message that comes up on the UI when I try generating a graph with Wikipedia source: https://en.wikipedia.org/wiki/Matthew_Sands
Failed To Process File: Matthew_Sands or LLM Unable to Parse Content 'NoneType' object has no attribute split
The same is true for any Wikipedia pages I try generating a graph for, and for YouTube sources like: https://www.youtube.com/watch?v=KmoCnTuhMEg
More specifically, here is a portion of what Docker reports:
2024-11-14 11:53:24 backend   | 2024-11-14 19:53:24,159 - File Failed in extraction: {'message': 'Failed To Process File:KmoCnTuhMEg or LLM Unable To Parse Content ', 'error_message': "'NoneType' object has no attribute 'split'", 'file_name': 'KmoCnTuhMEg', 'status': 'Failed', 'db_url': 'neo4j+s://878a3532.databases.neo4j.io:7687', 'failed_count': 1, 'source_type': 'youtube', 'source_url': 'https://www.youtube.com/watch?v=KmoCnTuhMEg', 'wiki_query': None, 'logging_time': '2024-11-14 19:53:24 UTC'} 2024-11-14 11:53:24 backend   | Traceback (most recent call last): 2024-11-14 11:53:24 backend   |   File "/code/score.py", line 202, in extract_knowledge_graph_from_file 2024-11-14 11:53:24 backend   |     uri_latency, result = await extract_graph_from_file_youtube(uri, userName, password, database, model, source_url, file_name, allowedNodes, allowedRelationship, retry_condition) 2024-11-14 11:53:24 backend   |   File "/code/src/main.py", line 258, in extract_graph_from_file_youtube 2024-11-14 11:53:24 backend   |     return await processing_source(uri, userName, password, database, model, file_name, pages, allowedNodes, allowedRelationship) 2024-11-14 11:53:24 backend   |   File "/code/src/main.py", line 370, in processing_source 2024-11-14 11:53:24 backend   |     node_count,rel_count,latency_processed_chunk = await processing_chunks(selected_chunks,graph,uri, userName, password, database,file_name,model,allowedNodes,allowedRelationship,node_count, rel_count) 2024-11-14 11:53:24 backend   |   File "/code/src/main.py", line 461, in processing_chunks 2024-11-14 11:53:24 backend   |     graph_documents =  await get_graph_from_llm(model, chunkId_chunkDoc_list, allowedNodes, allowedRelationship) 2024-11-14 11:53:24 backend   |   File "/code/src/llm.py", line 193, in get_graph_from_llm 2024-11-14 11:53:24 backend   |     llm, model_name = get_llm(model) 2024-11-14 11:53:24 backend   |   File "/code/src/llm.py", line 48, in get_llm 2024-11-14 11:53:24 backend   |     model_name, api_key = env_value.split(",") 2024-11-14 11:53:24 backend   | AttributeError: 'NoneType' object has no attribute 'split'
Sidenote, everything works just fine when utilizing the Neo4j online demo.
Again my apologies for taking so long to get back to you.
Kind regards,
Steve

authors: kartikpersistent stevexm


text:
Cherry Pick from Dev

Added sync for neo4j distribution bucket (#21)
Co-authored-by: Harshit Singhvi harshit.singhvi@neotechnology.com

 Helm Chart for Download Page


text:
Add GqlStatusObject support as notifications to ResultSummary

⚠  This API is released as preview.
Introduces GQL-compliant status objects to the ResultSummary.
GqlStatusObject is a GQL-compliant Notification object and status of query execution, this new object includes GqlStatus and StatusDescription.
ResultSummary.GqlStatusObjects() always contains at least 1 status representing the Success, No Data or Omitted Result.
The GqlStatusObjects will be presented in the following order:

A “no data” (02xxx) has precedence over a warning;
A warning (01xxx) has precedence over a success.
A success (00xxx) has precedence over anything informational (03xxx)

Migration from Notification
Most properties in Notification exist in the new GqlStatusObject, except Code and Title.
The GqlStatusObject.GqlStatus is equivalent to Code in Notification, but with values compliant with GQL.
The properties GqlStatusObject.Classification and GqlStatusObject.RawClassification are equivalent to Notification.Category and Notification.RawCategory. The name change is needed because Category has a different meaning in GQL.
Usage
Disabling GqlStatusObjects can be done in the same way as disabling Notifications. However, non-notification status can not be filtered (such as Success or No Data):
neo4j.NewDriverWithContext("neo4j://localhost", neo4j.BasicAuth("neo4j", "password", ""), func(config *config.Config) {
    config.NotificationsDisabledClassifications = notifications.DisableClassifications(notifications.Deprecation, notifications.Performance)
})

Iterating through GqlStatusObjects is also done in the same way as Notifications:
gqlStatusObjects := result.Summary.GqlStatusObjects()
for _, gqlStatusObject := range gqlStatusObjects {
    fmt.Printf(gqlStatusObject.GqlStatus())
    fmt.Printf(gqlStatusObject.StatusDescription())
    fmt.Printf(gqlStatusObject.DiagnosticRecord())
    // and so on
}

Deprecations

neo4j.NotificationSeverity please use notifications.NotificationSeverity directly.

neo4j.Warning please use notifications.Warning directly.

neo4j.Information please use notifications.Information directly.

neo4j.UnknownSeverity please use notifications.UnknownSeverity directly.

neo4j.NotificationCategory please use notifications.NotificationCategory directly.

neo4j.Hint please use notifications.Hint directly.

neo4j.Unrecognized please use notifications.Unrecognized directly.

neo4j.Unsupported please use notifications.Unsupported directly.

neo4j.Performance please use notifications.Performance directly.

neo4j.Deprecation please use notifications.Deprecation directly.

neo4j.Generic please use notifications.Generic directly.

neo4j.Security please use notifications.Security directly.

neo4j.Topology please use notifications.Topology directly.

neo4j.UnknownCategory please use notifications.Unknown directly.

 [Go] GQL Notifications Implementation to ADR

 [Go] Add description to statuses


text:
SortOrder escaping bug

Expected Behavior
The method void org.neo4j.ogm.session.resolvePropertyAnnotations(Class, SortOrder) should escape the properties in the SortOrder object only once.
Current Behavior
The method void org.neo4j.ogm.session.resolvePropertyAnnotations(Class, SortOrder) is escaping the SortOrder's properties each time it is called.
Possible Solution
Create a private flag to check if the SortOrder's properties are already escaped.
Steps to Reproduce (for bugs)
Call any getAll() method from a session with a provided SortOrder instance with at least one property to sort.
Reference Stacktrace
org.neo4j.driver.v1.exceptions.ClientException: Invalid input 'n': expected '`', '.', whitespace, '(', node labels, '[', "=~", IN, STARTS, ENDS, CONTAINS, IS, '^', '*', '/', '%', '+', '-', '=', "<>", "!=", '<', '>', "<=", ">=", AND, XOR, OR, DESCENDING, DESC, ASCENDING, ASC, ',', SKIP, LIMIT, WHERE, LOAD CSV, FROM, INTO, START, MATCH, UNWIND, MERGE, CREATE GRAPH >>, CREATE >> GRAPH, CREATE GRAPH, CREATE, SET, DELETE GRAPHS, DELETE, REMOVE, FOREACH, WITH, CALL, PERSIST, RELOCATE, RETURN, SNAPSHOT, UNION, ';' or end of input (line 1, column 39 (offset: 38))
"MATCH (n:`Anime`) WITH n ORDER BY n.``name`` RETURN n, ID(n)"
                                       ^

Your Environment

OGM Version used: 3.1.0
Java Version used: 10
Neo4J Version used: 3.5.5
Bolt Driver Version used: 3.1.0
Operating System and Version: Windows 10 (64 bits)
Link to your project: none

Thanks for reporting this.
I tried to reproduce the problem but was not successful. Do you have any reference code/sample/snippet/test that will generate the wrong query?
There are tests for simple sorting like you described it in our code base e.g. https://github.com/neo4j/neo4j-ogm/blob/851885691a44c1538e8620be37cf231056cd439d/test/src/test/java/org/neo4j/ogm/persistence/examples/music/MusicIntegrationTest.java#L279
that do not show any problems even when I run this with Java 10.

Actually, I am reusing the same SortOder instance each time when I fetch nodes with getAll(). In the tests, a new SortOrder instance is created when the getAll() method is called. I think this is why you can't reproduce this bug with the test you provided above.

Great, now I can see your problem you have.

authors: Arthur-Tesse meistermeier


text:
version 2.2 not working on install

Reproduce not working:

in gvim

CocInstall coc-tsserver

output:
2024-04-22T10:01:32.850 ERROR (pid:49388) [extensions] - Error on active extension coc-tsserver: import_coc50.services.register is not a function TypeError: import_coc50.services.register is not a function
at Object.activate (~/.config/coc/extensions/node_modules/coc-tsserver/lib/index.js:17730:44)
at ~/.vim/plugged/coc.nvim/build/index.js:265:1443
at new Promise ()
at Object.activate (~/.vim/plugged/coc.nvim/build/index.js:265:1401)
at BF.activate (~/.vim/plugged/coc.nvim/build/index.js:262:7161)
at ~.vim/plugged/coc.nvim/build/index.js:264:199
at new Promise ()
at s (~/.vim/plugged/coc.nvim/build/index.js:264:68)
Reproduce that works:

in gvim

CocInstall coc-tsserver@2.1.4

CocInfo
vim version: VIM - Vi IMproved 9.0 9000472
node version: v18.17.0
coc.nvim version: 0.0.82-347e33d7 2022-09-09 18:16:50 +0800
coc.nvim directory: XXX/.vim/plugged/coc.nvim
term: Apple_Terminal
platform: darwin

coc.nvim version: 0.0.82-347e33d7 2022-09-09 18:16:50 +0800

Your coc.nvim was outdated, upgrade to latest release please.

authors: colinshr fannheyward

repo: neoclide/coc-tsserver


text:
Allow nil metrics in agent->plugin messages

Builds on #50, fixes some annoyances around restart.
Will merge after #50 and its repo version bump.

Resolved all comments; I believe we discussed them previously.
I've tested it, seems to be ok.

repo: neondatabase/autoscaling


text:
pageserver/config: disable image layer creation check threshold

Problem
Christian diagnosed the compaction change in https://github.com/neondatabase/neon/pull/7230 as the root cause for slow find_lsn_for_timestamp in prod.
The essence of the problem is that Timeline::last_image_layer_creation_check_at is updated after the first partition, causing all remaining ones to skip image layer creation.
Details: https://neondb.slack.com/archives/C06UEMLK7FE/p1713380092262789
Summary of changes
As a quick fix, we effectively disable this check while we figure out how to inhibit image layer creation check
more gracefully. If it turns out that the solution shouldn't be wal based, we'll gracefully deprecate the config.

(Edited the PR description)

Should probably close this in favour of https://github.com/neondatabase/aws/pull/1270 and implement a proper fix.

Closing in favour of proper fix: https://github.com/neondatabase/neon/pull/7420

authors: VladLazar problame

repo: neondatabase/neon


text:
feat: implement workspace

The workspace of vscode does not exist in neovim. It is also not possible to simply set a workspace for each root. This is wrong behavior. So I implemented the concept of a workspace in lspconfig. The way it works is. You can create multiple worksapce. A default space is automatically created when the first project is opened. If you don't change the workspace. All open projects will belong to the default space. When you open the project after changing the workspace shown, it will check whether the server supports the workspace_folder feature. Send didchangeworkspacefolder notification if supported. Re-use the server. Otherwise a new server instance will be started.
eg: when open first file which will spawn a server then workspace is
{ defaule = {  {ProjectA , client.id} --a tuple } }

run LspWorkspaceAdd myspace this will create a new workspace and change current workspace to myspace  then open a project it will be
{
  defaule = {  {ProjectA , client.id} --a tuple },
  myspace = { {ProjectB , client.id } }
}

[ ] add test case
[ ] write doc for new workspace

ref https://code.visualstudio.com/docs/editor/workspaces https://github.com/emacs-lsp/lsp-mode/discussions/3095
Fix #2518

improve lspinfo now show workspace and root

need add more commands ? like WorkspaceRemove  WorkspaceChagne ? not sure

repo: neovim/nvim-lspconfig


text:
Inconsistencies in displaying multilingual URLs when fallback languages are enabled

I'm using djangocms-blog for a bilingual site (English and Finnish). In the site's settings, I have defined that either language can be used as the other's fallback (http://docs.django-cms.org/en/latest/topics/multiple_languages.html). This causes some inconsistent behavior when displaying URLs of posts that only exist in one language in different contexts.

A post only exists in English and I'm in a Finnish page containing apphook post list / latest posts plugin. The URL in the link is for the "Finnish version" of the post. When the link is followed, the site is showing the English content of the post as a fallback, but the URL, menus, etc. are in Finnish.

I'm visiting the post in any language. The URL in the language chooser for the "Finnish language" version of the post is always the English language URL. This is my personal preference, as I consider the English URL as canonical in case I haven't translated the post to Finnish.

My expectation is: if a post only exists in one language, show the canonical URL (the URL of the English version in the above example) in every context. I solved this for my site by modifying the get_absolute_url() method of the BlogPost and BlogCategory models to also query the fallback language in case the current language doesn't yield a result. This way any link to the post is always in the same language as the content, regardless of the language of the page the link it appears in.
The (botched, largely untested) patch I wrote can be found here: https://github.com/jasujm/djangocms-blog/commit/cfa4c678dbf8b8baa35d307dd203e21acbbfe703
I'd like to have an opinion on how fallback languages should be handled in post listings and other contexts. To recap: The main options are

Page in language A is displaying a link to a post that only exists in language B. The URL points to a page "in language A". The page URL, menus, etc. are in language A, but the post content is in language B.

Page in language A is displaying a link to a post that only exists in language B. The URL is always to a page in language B. When followed, the page URL, menus in addition to the content of the post are in language B.

The patch I linked above essentially implements the second option. I'd be happy to clean up, properly test and contribute the patch if that's the preferred way.

@jasujm thanks for sharing your findings.
I am writing fro the top of my head (I will do further checks shortly), thus take this with a grain of salt.
The fallback mechanism used here is the parler's one, which should behave basically the same as the django CMS' one, but it's not 100% guaranteed. IIRC parler does not have the "redirect on fallback" options django CMS has (http://docs.django-cms.org/en/latest/reference/configuration.html#cms-languages)
Usually keeping the user context (so same URL language, menu etc) is preferred, which is the current blog behavior and option 1 in your list.
In django CMS the option 2 is managed via the redirect_on_fallback CMS_LANGUAGES option, which is not available on parler
The option to change the get_absolute_url is definitely handy and easier than implementing redirect at parler level. I would definitely accept to integrate option 2, as long as it's a configurable option

Fixed by #572

authors: jasujm yakky

repo: nephila/djangocms-blog

license_source: bigquery


text:
bootstrap controller

This is the bootstrap controller

installs secrets
installs the staging packages to the workload

/approve

/lgtm

authors: gvbalaji henderiw johnbelamaric

repo: nephio-project/nephio


text:
updated replace in go mod files/krm functions

updated replace in arm fn go mod file now that the lib is merged into main.

/approve
/lgtm

authors: henderiw johnbelamaric


text:
Flagged as PUP

I'm running neofetch installed via scoop on Windows 23H2 (22631).
Windows defender flagged the app as "Potentially Unwanted Program".
This is a bad look and did make me think twice.
I don't know how this could be solved, but I think its important to look into it.

most likely can't be solved unless I pay to have the exe signed, I have looked into this extensively and theres not much I can do other than that

fair enough, i had a small hunch it could be signing related.
and yes, my bad, i did install it through winget.
thanks for looking into it at least.


text:
Doc.test.2

missing files needed for doc.test.1.
doc.test.1 and doc.test.2 include all changes. all previous pull  requests should be ignored.
I would delete previous pull requests but i do not think i have permissions. if i do, i shouldn't as i am not a comitter for steppy.
Regards Bruce Cottman
p.s. I am going to work on more .py contributions to steppy-tools now.

nevermind.. i just closed previous pull requests .

Hi @bcottman,
I can see that you closed #24 with Scalers. So what is the current state of scalers and their docs? Are all the changes in scalers included in this PR?
Best,
Kamil

Yes. Look at rather long winded PR doc.test.1 and test.doc.2. They include closed PR. Also Pr I Steppy-tools
Regard bruce

On Oct 4, 2018, at 11:42 AM, Kamil A. Kaczmarek notifications@github.com wrote:
Hi @bcottman,
I can see that you closed #24 with Scalers. So what is the current state of scalers and their docs? Are all the changes in scalers included in this PR?
Best,
Kamil
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

authors: bcottman kamil-kaczmarek

repo: neptune-ml/steppy-toolkit


text:
Refactor interfaces to hide tile_bounds and allow dynamic block_size

Previously the user had to work with black magic tile_bounds and the values of BLOCK_X, BLOCK_Y were hardcoded in CUDA so only 16 was a valid input. Now, CUDA has been refactored to take any value of block size <=16, and the tile_bounds computations have been completely hidden from the user. The new interface for project_gaussians and rasterize_gaussians instead accept an integer block_size input, from which tile bounds is calculated from.
There are 2 goals for this change:

Clean up the interface to users for tile_bounds and get rid of hardcoded BLOCK_X in CUDA, and
Dynamic block size will allow more sophisticated shared memory handling down the road, allowing for smaller block sizes to rasterize higher dimensional values more efficiently. This will address speed issues in ND rasterization like seen in #68 when implemented.

I tested this PR in nerfstudio with block sizes 2-16, training works for all sizes tested

@kerrj, can you explain the need for this in relation to shared memory. I thought that regardless of the num of threads/workers in a CUDA block, the shared memory size is fixed? So changing the block_width, and hence thread count, here would not make a difference to the allocatable shared memory. Let me know if I have any misunderstandings.

There are some nuances with shared memory size; 1) Some GPUs allow allocating more than 48KB of shared memory if you dynamically allocate it 2) launching a kernel with too much shared memory requested limits how many blocks can launch at the same time, which can starve the processor, in which case launching with a smaller block size is actually faster since more of the processors can be utilized. 3) regardless of the num of threads/workers in a CUDA block, the shared memory size is fixed This is true about the maximum shared memory, however you can launch with less to free up shared memory for other blocks executing.

authors: kerrj maturk

repo: nerfstudio-project/gsplat


text:
[VENDOR REQUEST]: Chicago Electronic Distributors (US)

Vendor Name
Chicago Elec. Dist.
Vendor Country
US
Vendor URL
https://chicagodist.com/
Product Links
https://rpilocator.com/?vendor=chicagodist
Additional information
https://github.com/nerves-metal-detector/nerves_metal_detector/blob/master/CONTRIBUTING.md#adding-new-vendors-and-products-from-rpilocator

I submitted a PR for this one. I was testing the digikey to see if I was having issues pulling info in general and this one seemed easy enough to implement.

authors: PhillippOhlandt bflatau


text:
CrunchBase: assess

Assess CrunchBase dataset:

What are the right crunchbase tags
How long are the descriptions of CB companies
...

Just to note: We have CSVs of up to date Crunchbase generated for a different project, if more useful than the old DB data

authors: Jack-Vines Juan-Mateos


text:
Rebuild display of parameter documentation in the UI

Closes #149

Before I forget, if it won't be used I'd remove src/bin/make_docs.js.

Ouch, didn't read this in time:

I would add a test to check that all aggs have a URL.

No problem!

It's easy to do. I'll create a new issue and corresponding PR,

authors: mindrones saabi

repo: nestauk/dapsboard


text:
Exception when exporting Winston config

Issue type:
[ ] question
[x] bug report
[ ] feature request
[ ] documentation issue
nestjs-config version
1.2.9
@nestjs/common+core or other package versions

@nestjs/common: 5.6.2
@nestjs/core: 5.6.2

Excepted behavior
Not throwing an exception
Actual behavior or outcome (for issue)
I am using nest-config with nest-winston, but it seems that new transports.Console() is crashing the ConfigService.
Replication/Example
winston.options.ts
import { TransformableInfo } from 'logform'
import { format, LoggerOptions, transports } from 'winston'

const printFormat = (info: TransformableInfo) => {
  return `${info.timestamp} ${info.level}: ${info.message}`
}

const options: LoggerOptions = {
  transports: [
    new transports.Console()
  ]
}

export default options

custom LoggerModule.ts
import { WinstonModule } from 'nest-winston'
import { ConfigService } from 'nestjs-config'

export const LoggerModule = WinstonModule.forRootAsync(
  {
    useFactory: (configService: ConfigService) => {
      const options = configService.get('winston.options')
      console.log(options)
      return options
    },
    inject: [ConfigService]
  }
)

[ExceptionHandler] Cannot convert undefined or null to object
TypeError: Cannot convert undefined or null to object
     at Function.keys (<anonymous>)
     at Object.bindCustomHelpers (/usr/src/app/node_modules/nestjs-config/dist/module/config.service.js:226:23)
     at Object.keys.reduce (/usr/src/app/node_modules/nestjs-config/dist/module/config.service.js:233:46)
     at Array.reduce (<anonymous>)
     at Object.bindCustomHelpers (/usr/src/app/node_modules/nestjs-config/dist/module/config.service.js:226:36)
     at Object.keys.reduce (/usr/src/app/node_modules/nestjs-config/dist/module/config.service.js:233:46)
     at Array.reduce (<anonymous>)
     at Object.bindCustomHelpers (/usr/src/app/node_modules/nestjs-config/dist/module/config.service.js:226:36)
     at Object.keys.reduce (/usr/src/app/node_modules/nestjs-config/dist/module/config.service.js:233:46)
     at Array.reduce (<anonymous>)
     at Object.bindCustomHelpers (/usr/src/app/node_modules/nestjs-config/dist/module/config.service.js:226:36)
     at Object.keys.reduce (/usr/src/app/node_modules/nestjs-config/dist/module/config.service.js:233:46)
     at Array.reduce (<anonymous>)
     at Object.bindCustomHelpers (/usr/src/app/node_modules/nestjs-config/dist/module/config.service.js:226:36)
     at Object.keys.reduce (/usr/src/app/node_modules/nestjs-config/dist/module/config.service.js:233:46)
     at Array.reduce (<anonymous>)

this should be fixed in the next release. However the bindConfigHelpers method will still add methods from that 'object' class to the helper methods which probably isn't desired. follow #72 for progress on this

authors: Patrick-Remy bashleigh

repo: nestjs-community/nestjs-config


text:
feat: allow to override HMAC validation

since auth guards cannot be overriden (see https://github.com/nestjs/nest/issues/8011#issuecomment-926544072), I moved the logic from HMAC guard into a service that can be overridden.
see #360
@tolgap  please review, especially:

is this the best way to implement this feature?
is this a breaking change, since users of the @ShopifyHmac decorator now need to import the ShopifyHmac module? (or maybe they don't and this was just necessary for the webhook module?)

Hey @schiller-manuel , do you know what use case necessitates this change? 🙂

@tolgap @schiller-manuel Thank you for this.
I totally missed this PR, and have now opened my own that does this in a different way, that includes no breaking changes.
I took inspiration from the sessionService implementation and made it accept an optional function which is called to get the shared secret.
This function is provided with the shop domain, so you can pull the shared secret from anywhere(in my case our database), and then return it. If you don't have one, or the domain is unknown to you... return undefined.

@tolgap what do we do about this? merge? close?

@schiller-manuel Thank you for your work on this again!
But seeing as the original issuer was attempting to use private apps, which is unsupported in @shopify/shopify-api, I don't feel that should be part of this package. I would suggest closing these PRs.
I proposed a workaround for @ashleyww93 using an ExceptionFilter.

authors: ashleyww93 schiller-manuel tolgap

repo: nestjs-shopify/nestjs-shopify


text:
docker pull gradle inside sysbox pod fails when docker root dir is within a emptyDir

In my Jenkins setup, I use the Kubernetes Plugin to allow it to spawn a new Pod for each build. Now, I'm integrating it with Sysbox, but I found this issue.
Some notes:

I cannot reproduce the issue with either docker:dind or the registry.nestybox.com/nestybox/ubuntu-bionic-systemd-docker
Without the emptyDir volume the error does not happen
It does not fail to pull other images like ubuntu
Without sysbox, with privileged it works fine
On my image, /home/jenkins/agent/docker is the docker root dir rather than /var/lib/docker

I know there must be something wrong with my image and I will probably refactor my image to make use of systemd as the sysbox sample image does, but I would like to report it here in case someone else faces the same issue.
To reproduce:
$ kubectl run dind --rm -i --image ghcr.io/felipecrs/jenkins-agent-dind:latest --pod-running-timeout=3m --overrides='
{
  "metadata": {
    "annotations": {
      "io.kubernetes.cri-o.userns-mode": "auto:size=65536"
    }
  },
  "spec": {
    "containers": [
      {
        "image": "ghcr.io/felipecrs/jenkins-agent-dind:latest",
        "name": "dind",
        "imagePullPolicy": "Always",
        "tty": true,
        "volumeMounts": [
          {
            "mountPath": "/home/jenkins/agent",
            "name": "workspace-volume",
            "readOnly": false
          }
        ],
        "command": ["/entrypoint.sh", "bash", "-xec", "df /home/jenkins/agent/docker; docker version; docker info; docker pull gradle"]
      }
    ],
    "runtimeClassName": "sysbox-runc",
    "volumes": [
      {
        "name": "workspace-volume",
        "emptyDir": {}
      }
    ]
  }
}
'
If you don't see a command prompt, try pressing enter.
INFO[2021-10-06T16:41:37.991336236Z] Default bridge (docker0) is assigned with an IP address 172.17.0.0/16. Daemon option --bip can be used to set a preferred IP address
INFO[2021-10-06T16:41:38.382940765Z] Loading containers: done.
WARN[2021-10-06T16:41:38.438402518Z] Not using native diff for overlay2, this may cause degraded performance for building images: running in a user namespace  storage-driver=overlay2
INFO[2021-10-06T16:41:38.438666453Z] Docker daemon                                 commit=79ea9d3 graphdriver(s)=overlay2 version=20.10.9
INFO[2021-10-06T16:41:38.438805321Z] Daemon has completed initialization
INFO[2021-10-06T16:41:38.615777928Z] API listen on /var/run/docker.sock
Client: Docker Engine - Community
 Version:           20.10.9
 API version:       1.41
 Go version:        go1.16.8
 Git commit:        c2ea9bc
 Built:             Mon Oct  4 16:08:29 2021
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.9
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.16.8
  Git commit:       79ea9d3
  Built:            Mon Oct  4 16:06:37 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.4.11
  GitCommit:        5b46e404f6b9f661a205e28d59c982d3634148f8
 runc:
  Version:          1.0.2
  GitCommit:        v1.0.2-0-g52b36a2
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
[services.d] done.
+ df /home/jenkins/agent/docker
Filesystem                                                   1K-blocks     Used Available Use% Mounted on
/var/lib/sysbox/shiftfs/b3a26b5d-2d6c-40e7-a356-5e29903e7125 130550852 14374468 109501748  12% /home/jenkins/agent/docker
+ docker version
Client: Docker Engine - Community
 Version:           20.10.9
 API version:       1.41
 Go version:        go1.16.8
 Git commit:        c2ea9bc
 Built:             Mon Oct  4 16:08:29 2021
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.9
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.16.8
  Git commit:       79ea9d3
  Built:            Mon Oct  4 16:06:37 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.4.11
  GitCommit:        5b46e404f6b9f661a205e28d59c982d3634148f8
 runc:
  Version:          1.0.2
  GitCommit:        v1.0.2-0-g52b36a2
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
+ docker info
Client:
 Context:    default
 Debug Mode: false
 Plugins:
  app: Docker App (Docker Inc., v0.9.1-beta3)
  buildx: Build with BuildKit (Docker Inc., v0.6.3)
  compose: Docker Compose (Docker Inc., v2.0.1)
  scan: Docker Scan (Docker Inc., v0.8.0)

Server:
 Containers: 0
  Running: 0
  Paused: 0
  Stopped: 0
 Images: 0
 Server Version: 20.10.9
 Storage Driver: overlay2
  Backing Filesystem: <unknown>
  Supports d_type: true
  Native Overlay Diff: false
  userxattr: false
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Cgroup Version: 1
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runtime.v1.linux runc io.containerd.runc.v2
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 5b46e404f6b9f661a205e28d59c982d3634148f8
 runc version: v1.0.2-0-g52b36a2
 init version: de40ad0
 Security Options:
  seccomp
   Profile: default
 Kernel Version: 5.4.0-70-generic
 Operating System: Ubuntu 20.04.3 LTS
 OSType: linux
 Architecture: x86_64
 CPUs: 8
 Total Memory: 31.34GiB
 Name: dind
 ID: 6IKK:XRTE:CM2G:NPQK:GAXA:ULRB:GKCA:6V5N:5IOM:WWLP:TJ7I:4TEP
 Docker Root Dir: /home/jenkins/agent/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false

WARNING: No swap limit support
+ docker pull gradle
Using default tag: latest
latest: Pulling from gradle
f3ef4ff62e0d: Pull complete
706b9b9c1c44: Extracting [==================================================>]  16.03MB/16.03MB
0fffb0c672b9: Download complete
5a54c3905797: Download complete
830009aaff35: Download complete
a28d173c1d5d: Download complete
INFO[2021-10-06T16:41:41.730316722Z] Attempting next endpoint for pull after error: failed to register layer: ApplyLayer exit status 1 stdout:  stderr: unlinkat /etc/ld.so.cache: operation not permitted
failed to register layer: ApplyLayer exit status 1 stdout:  stderr: unlinkat /etc/ld.so.cache: operation not permitted
[cmd] setpriv exited 1
INFO[2021-10-06T16:41:41.736788167Z] Processing signal 'terminated'
[cont-finish.d] executing container finish scripts...
[cont-finish.d] done.
[s6-finish] waiting for services.
INFO[2021-10-06T16:41:41.787222533Z] Layer sha256:da55b45d310bb8096103c29ff01038a6d6af74e14e3b67d1cd488c3ab03f5f0d cleaned up
INFO[2021-10-06T16:41:41.790357446Z] stopping event stream following graceful shutdown  error="<nil>" module=libcontainerd namespace=moby
INFO[2021-10-06T16:41:41.791369126Z] Daemon shutdown complete
INFO[2021-10-06T16:41:41.791390911Z] stopping healthcheck following graceful shutdown  module=libcontainerd
INFO[2021-10-06T16:41:41.791423211Z] stopping event stream following graceful shutdown  error="context canceled" module=libcontainerd namespace=plugins.moby
WARN[2021-10-06T16:41:42.792257234Z] grpc: addrConn.createTransport failed to connect to {unix:///var/run/docker/containerd/containerd.sock  <nil> 0 <nil>}. Err :connection error: desc = "transport: Error while dialing dial unix:///var/run/docker/containerd/containerd.sock: timeout". Reconnecting...  module=grpc
s6-svscanctl: fatal: unable to control /var/run/s6/services: supervisor not listening
[s6-finish] sending all processes the TERM signal.
[s6-finish] sending all processes the KILL signal and exiting.
Session ended, resume using 'kubectl attach dind -c dind -i -t' command when the pod is running
pod "dind" deleted

Well, I actually meant a symlink from /var/lib/docker to /home/jenkins/agent/docker, or a similar bind mount.

I don't think that will work, because that would mean the inner Docker would store it's data in /home/jenkins/agent/docker which has the shiftfs mount on it.
If you do the symlink the other way around (from /home/jenkins/agent/docker -> /var/lib/docker), then the inner Docker would work fine because /var/lib/docker is a container mount backed by a host dir managed by Sysbox without shiftfs.  This assumes however that your host has a decent amount of storage.
Thinking more about this, I am not sure the idea of having the inner Docker store it's images on a mount (/home/jenkins/agent/docker) that is backed by a network-based PVC is a good idea. I say so because Docker uses that storage heavily, so if it's network backed it may not perform well. I've not tried it so I may be wrong.

Something that I thought, but it would require to change sysbox's internals would be a new annotation like:
"metadata": {
  "annotations": {
    "sysbox.docker-root-dir": "/home/jenkins/agent/docker"
  }
}

I was thinking about something similar (but using env variables passed to the container rather than annotations), but in general we want to avoid this approach. Rather we want Sysbox to be smart enough to setup the container environment the proper way. I would prefer to implement the ID-mapped mount approach to this one, though it would require the host have a Linux kernel >= 5.12.

Hi @felipecrs, thanks for the info.
We've found a simpler solution: when the container starts, Sysbox will look at the container's /etc/docker/daemon.json file to understand where the inner Docker's data root resides. It will then use this info to setup the mounts for the inner Docker correctly.
@rodnymolina will be working on this soon.

That's really cool, nice approach and it would work for me. I would just suggest to document the fact that dockerd --data-root /other/dir (as cli option rather than the file) won't be supported.

Yep, makes sense ... will do.

@felipecrs, the fix for this one just went in here. Please build Sysbox from sources when have a chance and let us know how it goes.

Sure, I will do. I plan to:
Build from source, create my own sysbox binary container and adjust the daemonset to use my custom image to install in my workers. Does it sounds like a good plan?

Now that I'm thinking more about it, I think it would be a good idea to adjust the CI pipelines to publish a tag like :master of the Sysbox binary images so that it would make testing for everyone easier. I can contribute a PR if you would like this approach.

Build from source, create my own sysbox binary container and adjust the daemonset to use my custom image to install in my workers. Does it sounds like a good plan?

Let me give you a docker-image that you can point our manifests to.

Well, it didn't work at first, then I found that only the focal variant is updated in the image:

I went ahead and replaced the bionic binary with the focal one (and created a custom image for deploying in the daemonset).
But, after installing, everything seems to be working!

@felipecrs, glad to hear that it works!
And yes, should have told you that I had only built the ubuntu-focal image as that's what I found first in the description of this issue -- didn't read a more recent comment where you explicitly mentioned ubuntu-bionic. Sorry for that :-(

Again, thanks a lot, I couldn't be more grateful. Now I ran into https://github.com/nestybox/sysbox/issues/410.

Some fun pictures:
Before the fix:

After the fix:

Truly a "graphical" description! Let's hope we can make it all green in the new issue :-)

authors: ctalledo felipecrs rodnymolina

repo: nestybox/sysbox


text:
Can't Connected

Describe the problem
I have a Raspberry Pi with the Ubuntu system inside. Computers within the same local network can successfully connect to the Raspberry Pi using Netbird. However, most other computers outside of this network cannot establish a connection with the Raspberry Pi, except for my own computer. My computer and the Raspberry Pi are on the same network. It seems that the Netbird on the Raspberry Pi is constantly attempting to use P2P, while my computer directly uses a relay for connection.
Are you using NetBird Cloud?
self-host NetBird's control plane.
NetBird version
0.26.3
NetBird status -d output:
Peers detail:
xiaojueshi-mac-air-15.netbird.selfhosted:
NetBird IP: 100.82.11.76
Public key: RGcYaU+2NVs3eIsi3pLS7L+QMu8ttQMUVMf6tz16xQQ=
Status: Connecting
-- detail --
Connection type:
Direct: false
ICE candidate (Local/Remote): -/-
ICE candidate endpoints (Local/Remote): -/-
Last connection update: 2024-03-25 17:06:39
Last WireGuard handshake: -
Transfer status (received/sent) 0 B/0 B
Quantum resistance: false
Routes: -
kp-windows.netbird.selfhosted:
NetBird IP: 100.82.56.19
Public key: 88+O16ujpTv1pnMz5TnCOq7zDMHwE2c9pgnra5U6Ey0=
Status: Disconnected
-- detail --
Connection type:
Direct: false
ICE candidate (Local/Remote): -/-
ICE candidate endpoints (Local/Remote): -/-
Last connection update: -
Last WireGuard handshake: -
Transfer status (received/sent) 0 B/0 B
Quantum resistance: false
Routes: -
iphone-admin.netbird.selfhosted:
NetBird IP: 100.82.86.79
Public key: 42Op9CmuGMtEgh31SQjsN6vHNFJmiwNW0ETfm9AfZQw=
Status: Disconnected
-- detail --
Connection type:
Direct: false
ICE candidate (Local/Remote): -/-
ICE candidate endpoints (Local/Remote): -/-
Last connection update: -
Last WireGuard handshake: -
Transfer status (received/sent) 0 B/0 B
Quantum resistance: false
Routes: -
iphone-lizhiwei0720.netbird.selfhosted:
NetBird IP: 100.82.108.2
Public key: jl5ttRqA8G/cJlOVFziDyHa4Dkesqq8c9pYRin+KWl4=
Status: Disconnected
-- detail --
Connection type: P2P
Direct: false
ICE candidate (Local/Remote): host/host
ICE candidate endpoints (Local/Remote): 192.168.1.29:51820/192.168.1.30:51820
Last connection update: -
Last WireGuard handshake: 2024-03-25 17:04:56
Transfer status (received/sent) 7.0 MiB/4.3 MiB
Quantum resistance: false
Routes: -
zhanghaodemacbook-pro.netbird.selfhosted:
NetBird IP: 100.82.132.131
Public key: eUNdYLRkuwv73tGT037owIr1yIZ9W22opJKV5AHfW1I=
Status: Disconnected
-- detail --
Connection type:
Direct: false
ICE candidate (Local/Remote): -/-
ICE candidate endpoints (Local/Remote): -/-
Last connection update: -
Last WireGuard handshake: -
Transfer status (received/sent) 0 B/0 B
Quantum resistance: false
Routes: -
kp-mac-mini.netbird.selfhosted:
NetBird IP: 100.82.133.1
Public key: E8rLkXCzulLdR2KX870xiLA8sxFYptAj7UJ9f1GJmUQ=
Status: Connected
-- detail --
Connection type: P2P
Direct: true
ICE candidate (Local/Remote): host/host
ICE candidate endpoints (Local/Remote): 192.168.1.29:51820/192.168.1.30:51820
Last connection update: 2024-03-25 15:44:05
Last WireGuard handshake: 2024-03-25 17:04:56
Transfer status (received/sent) 7.0 MiB/4.3 MiB
Quantum resistance: false
Routes: -
mpj-work-windows.netbird.selfhosted:
NetBird IP: 100.82.135.100
Public key: oWB1LKGn+O9aXqu4mAccY5eLlhDwynbxA5Z/whA9Xz8=
Status: Connecting
-- detail --
Connection type: P2P
Direct: false
ICE candidate (Local/Remote): host/prflx
ICE candidate endpoints (Local/Remote): 192.168.1.29:51820/192.168.1.17:51820
Last connection update: 2024-03-25 17:06:32
Last WireGuard handshake: 2024-03-25 17:05:10
Transfer status (received/sent) 1.1 MiB/6.9 MiB
Quantum resistance: false
Routes: -
lzw-mac-pro.netbird.selfhosted:
NetBird IP: 100.82.150.87
Public key: Fu2Wp261gq5R36THY0oHRYo8sc/vpakTotuSIpneLm0=
Status: Connected
-- detail --
Connection type: P2P
Direct: true
ICE candidate (Local/Remote): host/prflx
ICE candidate endpoints (Local/Remote): 192.168.1.29:51820/192.168.1.17:51820
Last connection update: 2024-03-25 13:49:32
Last WireGuard handshake: 2024-03-25 17:05:10
Transfer status (received/sent) 1.1 MiB/6.9 MiB
Quantum resistance: false
Routes: -
xyy-work-windows.netbird.selfhosted:
NetBird IP: 100.82.210.143
Public key: wezpbFh+7B6p8I0j8wyIp97vXHU1tlMimkbz1S1S7TU=
Status: Connecting
-- detail --
Connection type: P2P
Direct: false
ICE candidate (Local/Remote): host/prflx
ICE candidate endpoints (Local/Remote): 192.168.1.29:51820/192.168.1.17:51820
Last connection update: 2024-03-25 17:06:34
Last WireGuard handshake: 2024-03-25 17:05:10
Transfer status (received/sent) 1.1 MiB/6.9 MiB
Quantum resistance: false
Routes: -
meizu-20pro-cn.netbird.selfhosted:
NetBird IP: 100.82.228.116
Public key: pbQRd5X3r97iek3/OBzoxrCJ8O35c8QXwndWj0vEZ0M=
Status: Disconnected
-- detail --
Connection type:
Direct: false
ICE candidate (Local/Remote): -/-
ICE candidate endpoints (Local/Remote): -/-
Last connection update: -
Last WireGuard handshake: -
Transfer status (received/sent) 0 B/0 B
Quantum resistance: false
Routes: -
sjzgdd.netbird.selfhosted:
NetBird IP: 100.82.235.109
Public key: jPRM7u1RMb82JQH+6rGZ8UFH3RZWJiuqi90/NmBZb24=
Status: Connecting
-- detail --
Connection type: P2P
Direct: false
ICE candidate (Local/Remote): host/prflx
ICE candidate endpoints (Local/Remote): 192.168.1.29:51820/192.168.1.17:51820
Last connection update: 2024-03-25 17:06:36
Last WireGuard handshake: 2024-03-25 17:05:10
Transfer status (received/sent) 1.1 MiB/6.9 MiB
Quantum resistance: false
Routes: -
Daemon version: 0.26.3
CLI version: 0.26.3
Management: Connected to https://netbird.yu.xiaojueshi.top:8443
Signal: Connected to https://netbird.yu.xiaojueshi.top:8443
Relays:
[stun:netbird.yu.xiaojueshi.top:3478] is Available
[turn:netbird.yu.xiaojueshi.top:3478?transport=udp] is Available
Nameservers:
FQDN: orangepizero3.netbird.selfhosted
NetBird IP: 100.82.243.6/16
Interface type: Kernel
Quantum resistance: false
Routes: 172.16.1.0/24
Peers count: 2/11 Connected

Hi @youlvlv,
can you tell me a bit more about your network setup? When I check the status output I see multiple peers having same ICE candidate endpoints e.g.
`mpj-work-windows.netbird.selfhosted:
NetBird IP: 100.82.135.100
Public key: oWB1LKGn+O9aXqu4mAccY5eLlhDwynbxA5Z/whA9Xz8=
Status: Connecting
-- detail --
Connection type: P2P
Direct: false
ICE candidate (Local/Remote): host/prflx
ICE candidate endpoints (Local/Remote): 192.168.1.29:51820/192.168.1.17:51820
Last connection update: 2024-03-25 17:06:32
Last WireGuard handshake: 2024-03-25 17:05:10
Transfer status (received/sent) 1.1 MiB/6.9 MiB
Quantum resistance: false
Routes: -
lzw-mac-pro.netbird.selfhosted:
NetBird IP: 100.82.150.87
Public key: Fu2Wp261gq5R36THY0oHRYo8sc/vpakTotuSIpneLm0=
Status: Connected
-- detail --
Connection type: P2P
Direct: true
ICE candidate (Local/Remote): host/prflx
ICE candidate endpoints (Local/Remote): 192.168.1.29:51820/192.168.1.17:51820
Last connection update: 2024-03-25 13:49:32
Last WireGuard handshake: 2024-03-25 17:05:10
Transfer status (received/sent) 1.1 MiB/6.9 MiB
Quantum resistance: false
Routes: -
xyy-work-windows.netbird.selfhosted:
NetBird IP: 100.82.210.143
Public key: wezpbFh+7B6p8I0j8wyIp97vXHU1tlMimkbz1S1S7TU=
Status: Connecting
-- detail --
Connection type: P2P
Direct: false
ICE candidate (Local/Remote): host/prflx
ICE candidate endpoints (Local/Remote): 192.168.1.29:51820/192.168.1.17:51820
Last connection update: 2024-03-25 17:06:34
Last WireGuard handshake: 2024-03-25 17:05:10
Transfer status (received/sent) 1.1 MiB/6.9 MiB
Quantum resistance: false
Routes: -`
One of each set is able to connect and all the others will be stuck in connecting state. Why do those machines share the same IP address? This might help us understand why the client is unable to connect on those.

@pascal-fischer I don't why, they have same IP address. How does Netbird obtain these IP addresses?  I have two network connections, a wired network and a wireless network, which are isolated from each other. The wired network has a firewall that prevents direct external access. I am using a Raspberry Pi to connect to both networks simultaneously, allowing me to access network resources in the wired network through Netbird via the wireless network.I have disabled the Raspberry Pi's ability to access the internet through the wired network, so it can only access the internet through the wireless network.

Those IP addresses are usually the private or public IPs of the devices. We use ICE to detect all the possible connections and negotiate the best one. It might be that this detection has an issue with the network setup. Could you enable debug logs on the raspberry by following https://docs.netbird.io/how-to/troubleshooting-client so that we can see the connection negotiation? Also could you try disabling both networks (one at a time) and see if that would allow proper connection establishment in either case?

authors: pascal-fischer youlvlv

repo: netbirdio/netbird


text:
Official packaging for Debian

Hi!
I have planned to package the netbird components for the official Debian 12 (bookworm) release (and probably backporting it to Debian 11 (bullseye). I am opening this issue to keep upstream in the loop and allow for any comments. I will close it with a comment once the package was uploaded and accepted into Debian.
Cheers,
Nik

This is awesome @Natureshadow thanks. Are you planning to publish our release packages or you will need to build custom ones?

This is awesome @Natureshadow thanks. Are you planning to publish our release packages or you will need to build custom ones?

Debian builds and verifies all packages from source, so the package will be a fresh build according to Debian Policy.

authors: Natureshadow mlsmaycon


text:
Generate docker images for tagged commits

Added the capability for the CI pipeline to generate docker images with git tags.
For example, if we tag a commit with v0.0.1-alpha.1, the docker images with the tag v0.0.1-alpha.1 will be generated.
You can see the effect here https://github.com/henrybear327/netbox-operator/pkgs/container/netbox-operator

Unblocks https://github.com/netbox-community/netbox-operator/pull/68

After merging, tag the latest commit on the main branch with v0.0.1-alpha.1, as agreed during the meeting

repo: netbox-community/netbox-operator


text:
Removing gatsby clean from gatsby build process

Feature request
I am currently running a Gatsby w/ NetlifyCMS site and have been looking for a workaround so I don't have to run gatsby clean every time after changes have been made in the CMS  => meaning removing the gatsby clean from the build command.
What is the expected behavior?
Running gatsby from cache, keeping already formatted images and only rebuild pages where changes have been made.
What is motivation or use case for adding/changing the behavior?
Due to the large number of images on my site, having to rebuild every time from scratch takes a lot longer than it should.
How should this be implemented in your opinion?
The problem seems to be that images cannot be found after changes have been made to the md file resulting in "Cannot read property 'childImageSharp' of null". So far only removing the cache and public folder seems to resolve the issue, but this comes with long building times.
Are you willing to work on this yourself?
yes

The viable option i see is do what Jason wrote in this article about enabling Gatsby incremental build. Please post back to us if you happen to go down this path

I was having a similar issue, seemingly identical to this error. I updated gatsby-remark-relative-images to version 2.0.2 and that fixed it for me. Pull Request 621 is already open for bumping that dependency.

authors: LarsBehrenberg ZoltanVeres kenfehling


text:
netlify config resolve does not respect httpProxy flag

Describe the bug
~cli is using @netlify/config to resolve config, but @netlify/config/src/api/site_info.ts:getSiteInfo does not respect offline flag. It will try to retrieve site info until timeout. I found this when netlify dev, but later found that all sub commands resolving config will suffer from it.~
As pointed by erezrokah, it actually works. So this issue turns to the problem of httpProxy.
Additional context
BTW, resolve config does not respect httpProxy, too. That is how I found this. It will be better if config resolve can use the httpAgent.

Thanks for reporting @xhebox, @netlify/config returns undefined for the API when passing the offline flag:
https://github.com/netlify/build/blob/0d2009aa3fb308f93a71425a312c2f5a8ca9aa40/packages/config/src/api/client.js#L8
which then should cause getSiteInfo to not return any data:
https://github.com/netlify/build/blob/0d2009aa3fb308f93a71425a312c2f5a8ca9aa40/packages/config/src/api/site_info.js#L13
For httpProxy this looks like a bug and I agree passing down the httpAgent looks like the solution.

Wow, really quick response. And yes, I found that it works now. Maybe I messed code. I've modified the issue for httpAgent.

@erezrokah I think I figured out why offline does not work for me. It is still a bug. --offline works, but not -o. minimist parsed argv.o = true, but config is using argv.offline to judge. Looks like it is another kind of bug...

Thanks @xhebox, that's very helpful. I opened a new issue for that bug https://github.com/netlify/cli/issues/2400

Closing in favor of https://github.com/netlify/cli/issues/3115

authors: erezrokah xhebox

repo: netlify/cli


text:
Failed to install node version '12.12.0'

[Sorry, I am sure if this is right repo to post this Netlify deployment issue]
- Do you want to request a feature or report a bug?
Bug
- What is the current behavior?
...
2:47:10 PM: Attempting node version '12.12.0' from .nvmrc
2:47:12 PM: Version '12.12.0' not found - try `nvm ls-remote` to browse available versions.
2:47:12 PM: Failed to install node version '12.12.0'
2:47:12 PM: failed during stage 'building site': Build script returned non-zero exit code: 1
2:47:12 PM: Error running command: Build script returned non-zero exit code: 1
2:47:12 PM: Failing build: Failed to build site
2:47:12 PM: Finished processing build request in 37.732633187s

- If the current behavior is a bug, please provide the steps to reproduce.
This is for https://github.com/Hongbo-Miao/hongbomiao.com/pull/271
The Netlify log is at https://app.netlify.com/sites/hongbomiao/deploys/5da0f8388e6a33bd2937901e
- What is the expected behavior?
Actually, if you try to run nvm ls-remote, node version '12.12.0' is in the list.

Close since it works now in Netlify.


text:
Use netlify/js-client

Extract the open-api js-client into its own module and consume it in the cli.

Coverage increased (+29.8%) to 100.0% when pulling 9eb6dc677f0a171170f2c7cbba63db44cafe91ec on js-client into df76d8a0c025168b11065ec035cc1e5ab0a30479 on master.

authors: bcomnes coveralls


text:
Update and rename builtio.md to contentstack.md

Updating this landing page with more accurate information.

Looks great, thanks!

authors: erquhart johnpkel


text:
Allow custom babel configurations

Is your feature request related to a problem? Please describe.

As a developer creating websites for clients on older browsers, I would like a way to configure a .babeljs or browserslist.

Additional context

I found NetlifyCMS clicking around through Gatsby and such so I will use them as an example. It is very easy to use a custom .babelrc file in Gatsby but, after a few days of trying with NetlifyCMS, it seems the babel configuration does not transfer over to the admin page.

Netlify CMS only supports modern browsers, as some of our dependencies also only support modern browsers - it isn't necessarily as simple as altering the build. We're certainly open to efforts for broader browser support.

authors: AryanJ-NYC erquhart

repo: netlify/netlify-cms


text:
Draft cannot be saved when collection folder property has a leading slash

Describe the bug
If the config.yml file contains leading slashes in the folder property of a collection, it becomes impossible to save changes to a draft when that branch gets behind commits made on master. The root cause of this is that GitHub does not accept a leading slash on the path property when POSTing to the /trees endpoint. The following request is being attempted in that scenario:
{"base_tree":"c1a16b0874e83ef25562c71bce9eb090f300d1b1","tree":[{"path":"/_pages/frequently-asked-questions.md","mode":"100644","type":"blob","sha":"b06e563e4d74960b131676daec515dbeb25b4c9a","size":2643,"url":"https://api.github.com/repos/Dwolla/monetery-jekyll/git/blobs/b06e563e4d74960b131676daec515dbeb25b4c9a"}]}
This request results in a 422 error, and the editor sees the error in the screenshot below.
To Reproduce

Configure a site with editorial workflow enabled and leading slash in a collections folder property, similar to the config file below
Save a draft change in the collection you set up in Step 1
Publish a change to a separate page, or do anything that adds a commit to master such as merging a manual PR
Go back to the page you edited in Step 2. Attempt to make another change and save the draft
You should see the "Failed to persist entry" error in the screenshot

Expected behavior
The leading slash in the collections folder should be trimmed before using that value in a POST to the GitHub /trees endpoint.
Screenshots

Applicable Versions:
Netlify CMS 4.2.2/GitHub/Git Gateway
CMS configuration
backend:
  name: git-gateway
  branch: master
  identity_url: "https://monetery.com/.netlify/identity"
  gateway_url: "https://monetery.com/.netlify/git"
  squash_merges: true

publish_mode: editorial_workflow
media_folder: "assets/img/uploads"

site_url: https://monetery.com
logo_url: https://monetery.com/assets/img/monetery-logo-color.svg

collections:
  - label: "Sitewide Options"
    name: options
    editor:
      preview: false
    files:
      - label: "Navigation Menu"
        name: nav
        file: "_data/nav.yml"
        fields:
          - {label: "Additional Header Text", name: headerText, widget: string, required: false}
          - label: "Nav Items"
            label_singular: "Nav Item"
            name: topLevelItems
            widget: list
            fields:
              - {label: "Display Text", name: displayText, widget: string}
              - {label: URL, name: url, widget: string}
              - label: "Item Type"
                name: itemType
                widget: select
                options: ["Link", "Button"]
              - label: "Nav Items"
                label_singular: "Nav Item"
                name: childItems
                widget: list
                fields:
                  - {label: "Display Text", name: displayText, widget: string}
                  - {label: "URL", name: url, widget: string}
                  - {label: "Icon", name: icon, widget: image}
      - label: "Footer"
        name: footer
        file: "_data/footer.yml"
        fields:
          - {label: "Blurb", name: blurb, widget: text}
          - label: "Footer Logo"
            name: logo
            widget: object
            fields:
              - {label: "Alt Text", name: altText, widget: string}
              - {label: "Image", name: path, widget: image}
              - {label: "URL", name: url, widget: string}
          - label: "Social Links"
            label_singular: "Social Link"
            name: social
            widget: list
            fields:
              - {label: "Alt Text + Title", name: altText, widget: string}
              - {label: "Image", name: path, widget: image}
              - {label: "URL", name: url, widget: string}
              - label: "Style"
                name: "altStyle"
                widget: "select"
                default: ""
                required: false
                options:
                  - { label: "Default", value: "" }
                  - { label: "Skinny", value: "footer__social-item--skinny" }
      - label: "Defaults"
        name: defaults
        file: "_data/defaults.yml"
        fields:
          - {label: "Page Title", name: title, widget: string}
          - {label: "Meta Description", name: metaDescription, widget: text}
          - label: "Social Sharing"
            name: social
            widget: object
            required: false
            fields:
              - {label: "OpenGraph Image", name: ogImage, widget: image}
              - {label: "Twitter Image", name: twitterImage, widget: image}
      - label: "404 Page"
        name: notfound
        file: "_data/notfound.yml"
        fields:
          - {label: "Content", name: content, widget: markdown}
  - label: "Pages"
    label_singular: "Page"
    name: pages
    folder: "/_pages"
    create: true
    slug: "{{slug}}"
    preview_path: "{{permalink}}"
    editor:
      preview: false
    fields:
      - {label: "Title", name: title, widget: string}
      - {label: "Permalink", name: permalink, widget: string}
      - label: "Layout Template"
        name: "layout"
        widget: "select"
        default: "blocks"
        options:
          - { label: "Default", value: "blocks" }
          - { label: "Home Page", value: "home" }
      - {label: "Meta Description", name: metaDescription, widget: text, required: false}
      - label: "Social Sharing"
        name: social
        widget: object
        required: false
        fields:
          - {label: "OpenGraph Image", name: ogImage, widget: image, required: false}
          - {label: "Twitter Image", name: twitterImage, widget: image, required: false}
      - label: "Content Blocks"
        label_singular: "Content Block"
        name: blocks
        widget: list
        types:
          - label: "Hero"
            name: hero
            widget: object
            fields:
              - {label: "Heading", name: heading, widget: string}
              - {label: "Sub-heading", name: boxHeading, widget: string, required: false, hint: "Appears above main heading in all caps."}
              - {label: "Content", name: content, widget: markdown, buttons: ["bold", "italic", "link"]}
          - label: "Hero - Homepage"
            name: homeHero
            widget: object
            fields:
              - {label: "Heading", name: heading, widget: string}
              - {label: "Content", name: content, widget: markdown, buttons: ["bold", "italic", "link"]}
              - {label: "Arrow Link URL", name: arrowUrl, widget: string}
          - label: "Rich Text Block"
            name: textBlock
            widget: object
            fields:
              - {label: "Heading", name: heading, widget: string, required: false}
              - {label: "Sub-heading", name: subHeading, widget: string, required: false, hint: "Appears in all caps."}
              - {label: "Content", name: content, widget: markdown}
          - label: "Logo Block"
            name: logoBlock
            widget: object
            fields:
              - {label: "Heading", name: heading, widget: string}
              - label: "Style"
                name: "altStyle"
                widget: select
                default: ""
                required: false
                options:
                  - {label: "Default", value: ""}
                  - {label: "Gray Background", value: "content-block--alternate"}
                  - {label: "Hex Background", value: "hex-block"}
              - label: "Logos"
                label_singular: "Logo"
                name: logos
                widget: list
                fields:
                  - {label: "Org Name", name: altText, widget: string}
                  - {label: "URL", name: url, widget: string}
                  - {label: "Logo", name: path, widget: image}
                  - label: "Logo Width"
                    name: "logoStyle"
                    widget: select
                    default: "sponsors__logo"
                    options:
                      - {label: "Default", value: "sponsors__logo"}
                      - {label: "Full Width", value: "sponsors__logo--expand"}
                      - {label: "80% Width", value: "sponsors__logo--shrink-80"}
                      - {label: "70% Width", value: "sponsors__logo--shrink-70"}
                      - {label: "60% Width", value: "sponsors__logo--shrink-60"}
                      - {label: "50% Width", value: "sponsors__logo--shrink-50"}
          - label: "Contact Us"
            name: contactUs
            widget: object
            fields:
              - {label: "iFrame URL", name: iframeUrl, widget: string}
              - {label: "Legal Link Text", name: legalLinkText, widget: string}
              - {label: "Legal URL", name: legalUrl, widget2: string}
              - {label: "HTML ID", name: id, widget: string, required: false, hint: "Set an ID to link directly to this block."}
          - label: "Two Col with CTA"
            name: twoColCta
            widget: object
            fields:
              - {label: "Heading", name: heading, widget: string}
              - label: "Style"
                name: "altStyle"
                widget: "select"
                default: ""
                required: false
                options:
                  - { label: "Default", value: "" }
                  - { label: "Extra Top Margin", value: "content-block--spaced" }
              - {label: "HTML ID", name: id, widget: string, required: false, hint: "Set an ID to link directly to this block."}
              - label: "Left Col"
                name: leftCol
                widget: list
                types:
                  - label: "Text with Icon"
                    name: textWithIcon
                    widget: object
                    fields:
                      - {label: "Sub-heading", name: subHeading, widget: string, required: false}
                      - {label: "Content", name: content, widget: markdown}
                      - {label: "Link Text", name: linkText, widget: string, required: false}
                      - {label: "Link URL", name: linkUrl, widget: string, required: false}
                  - label: "Expandable List"
                    name: expandableList
                    widget: object
                    fields:
                      - {label: "Sub-heading", name: subHeading, widget: string, required: false}
                      - {label: "Content", name: content, widget: markdown}
                      - label: "Items"
                        name: items
                        widget: list
                        fields:
                          - {label: "Term", name: term, widget: string}
                          - {label: "Definition", name: definition, widget: markdown}
              - label: "Right Col"
                name: rightCol
                widget: list
                types:
                  - label: "CTA"
                    name: cta
                    widget: object
                    fields:
                      - {label: "Title", name: title, widget: string}
                      - {label: "Content", name: content, widget: markdown}
                      - {label: "Link Text", name: linkText, widget: string, required: false}
                      - {label: "Link URL", name: linkUrl, widget: string, required: false}
                  - label: "Twitter Feed"
                    name: twitterFeed
                    widget: object
                    fields:
                       - {label: "Title", name: title, widget: string}
                       - {label: "Feed URL", name: feedUrl, widget: string}
                       - {label: "Max Number of Tweets", name: tweetLimit, widget: number, default: 20, valueType: int, min: 1, max: 20}
                       - {label: "Alternate Text", name: altText, widget: string, hint: "Displays when the Feed isn't enabled, such as when an ad blocker is enabled."}
          - label: "Benefits"
            name: benefits
            widget: object
            fields:
              - {label: "Heading", name: heading, widget: string, required: false}
              - {label: "Sub-heading", name: subHeading, widget: string, required: false}
              - {label: "Content", name: content, widget: markdown, required: false}
              - label: "Style"
                name: "altStyle"
                widget: "select"
                default: ""
                required: false
                options:
                  - {label: "Default", value: ""}
                  - {label: "Gray Background", value: "content-block--alternate"}
                  - {label: "Hex Background", value: "hex-block"}
              - label: "Column Layout"
                name: "layout"
                widget: "select"
                default: "col-md-6"
                options:
                  - {label: "Two Cols", value: "col-md-6"}
                  - {label: "Four Cols", value: "col-sm-6 col-lg-3 benefits__item--vertical"}
              - label: "Columns"
                name: cols
                widget: list
                fields:
                  - {label: "Heading", name: heading, widget: string}
                  - {label: "Content", name: content, widget: markdown, buttons: ["bold", "italic", "link"]}
                  - {label: "Icon", name: icon, widget: image}
              - {label: "Additional Content", name: additionalContent, widget: markdown, required: false}
          - label: "Pricing"
            name: pricing
            widget: object
            fields:
              - {label: "Heading", name: heading, widget: string, required: false}
              - {label: "Sub-heading", name: subHeading, widget: string, required: false}
              - {label: "Content", name: content, widget: markdown, required: false}
              - label: "Style"
                name: "altStyle"
                widget: "select"
                default: ""
                required: false
                options:
                  - {label: "Default", value: ""}
                  - {label: "Gray Background", value: "content-block--alternate"}
                  - {label: "Hex Background", value: "hex-block"}
                  - {label: "Hex Background - Bottom of Page", value: "hex-block hex-block--bottom"}
              - label: "Prices"
                label_singular: "Price Option"
                name: cols
                widget: list
                fields:
                  - {label: "Heading", name: heading, widget: string}
                  - {label: "Dates", name: dates, widget: string}
                  - {label: "Price Amount", name: amount, widget: string}
                  - {label: "Link Text", name: linkText, widget: string}
                  - {label: "Link URL", name: linkUrl, widget: string}
                  - {label: "Icon", name: icon, widget: image, required: false}
                  - label: "Is this Price Currently Available?"
                    name: "isEnabled"
                    widget: "select"
                    default: "enabled"
                    options:
                      - {label: "Yes", value: "enabled"}
                      - {label: "No", value: "disabled"}
              - {label: "Additional Content", name: additionalContent, widget: markdown, required: false}
          - label: "Expandable List"
            name: expandableList
            widget: object
            fields:
              - {label: "Content", name: content, widget: markdown, required: false}
              - label: "Style"
                name: "altStyle"
                widget: "select"
                default: ""
                required: false
                options:
                  - {label: "Default", value: ""}
                  - {label: "Gray Background", value: "content-block--alternate"}
              - label: "Items"
                label_singular: "Item"
                name: items
                widget: list
                fields:
                  - {label: "Term", name: term, widget: string}
                  - {label: "Definition", name: definition, widget: markdown}
          - label: "Speakers Block"
            name: speakers
            widget: object
            fields:
              - {label: "Heading", name: heading, widget: string}
              - label: "Style"
                name: "altStyle"
                widget: "select"
                default: ""
                required: false
                options:
                  - {label: "Default", value: ""}
                  - {label: "Gray Background", value: "content-block--alternate"}
              - label: "Speakers"
                label_singular: "Speaker"
                name: speakers
                widget: list
                fields:
                  - label: "Name"
                    name: title
                    widget: relation
                    collection: speakers
                    searchFields: ["title", "id"]
                    valueField: id
                    displayFields: ["title"]
                    hint: "Start typing to find a speaker by name (at least three chars)."
  - label: "Speakers"
    label_singular: "Speaker"
    name: speakers
    folder: "/_speakers"
    create: true
    slug: "{{slug}}"
    preview_path: "/speakers/{{slug}}"
    editor:
      preview: false
    fields:
      - {label: "Full Name", name: title, widget: string}
      - {label: "Speaker ID", name: id, widget: string, hint: "Enter a short text ID that will be unique for this speaker and never change. Used internally for relation fields."}
      - {label: "Headshot", name: headshot, widget: image}
      - {label: "Title", name: jobTitle, widget: string}
      - {label: "Organization", name: organization, widget: string, required: false}
      - label: "Biography"
        name: bio
        widget: object
        fields:
          - {label: "Full Bio", name: full, widget: markdown}
          - {label: "Excerpt", name: excerpt, widget: text, required: false, hint: "Potentially used in places where the full bio is too long."}
      - label: "Social Media"
        name: social
        widget: object
        fields:
          - {label: "LinkedIn", name: linkedIn, widget: string, required: false}
          - {label: "Twitter", name: twitter, widget: string, required: false}

Additional context
I'm hoping this issue can be worked around by manually trailing the leading slash in the config. There is no guidance to do so in the docs, however.

Closing as this was fixed (tested with the attached config and had no issues)

authors: erezrokah sddaniels


text:
TypeError: Cannot read property 'get' of undefined

Describe the bug
To Reproduce
Expected behavior
Screenshots
Applicable Versions:

Netlify CMS version: netlify-cms-app@2.12.12
Git provider: git-gateway
Browser version: Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36

CMS configuration
publish_mode: simple
slug:
  encoding: unicode
  clean_accents: false
  sanitize_replacement: "-"
backend:
  name: git-gateway
media_folder: site/static/img
public_folder: img
collections:
  - name: post
    label: Post
    folder: site/content/post
    create: true
    fields:
      - label: Title
        name: title
        widget: string
      - label: Publish Date
        name: date
        widget: datetime
      - label: Intro Blurb
        name: description
        widget: text
      - label: Image
        name: image
        widget: image
        required: false
      - label: Body
        name: body
        widget: markdown
    publish: true
    sortableFields:
      - commit_date
      - title
      - date
      - commit_author
      - description
  - name: pages
    label: Pages
    files:
      - file: site/content/_index.md
        label: Home Page
        name: home
        fields:
          - label: Title
            name: title
            widget: string
          - label: Subtitle
            name: subtitle
            widget: string
          - label: Image
            name: image
            widget: image
          - label: Blurb
            name: blurb
            widget: object
            fields:
              - label: Heading
                name: heading
                widget: string
              - label: Text
                name: text
                widget: text
          - label: Intro
            name: intro
            widget: object
            fields:
              - label: Heading
                name: heading
                widget: string
              - label: Text
                name: text
                widget: text
          - label: Products
            name: products
            widget: list
            fields:
              - label: Image
                name: image
                widget: image
              - label: Text
                name: text
                widget: text
          - label: Values
            name: values
            widget: object
            fields:
              - label: Heading
                name: heading
                widget: string
              - label: Text
                name: text
                widget: text
      - file: site/content/contact/_index.md
        label: Contact Page
        name: contact
        fields:
          - label: Title
            name: title
            widget: string
          - label: Logo
            name: logo
            widget: image
          - label: Body
            name: body
            widget: markdown
          - label: Contact Entries
            name: contact_entries
            widget: list
            fields:
              - label: Heading
                name: heading
                widget: string
              - label: Text
                name: text
                widget: text
      - file: site/content/products/_index.md
        label: Products Page
        name: products
        fields:
          - label: Title
            name: title
            widget: string
          - label: Image
            name: image
            widget: image
          - label: Heading
            name: heading
            widget: string
          - label: Description
            name: description
            widget: string
          - label: Intro
            name: intro
            widget: object
            fields:
              - label: Heading
                name: heading
                widget: string
              - label: Description
                name: description
                widget: text
              - label: Blurbs
                name: blurbs

...

Hi @rahulkashyap31, can you share more information regarding the error?
Full error message, entire config.yml file, screenshots and possibly a repo reproducing the error?

Closing per further information


text:
Update Docs: Media “cloudinary”

Summary
Cloudinary might have changed something in their Media Library which caused regressions in my current configuration.
I needed to nest every field-level configuration of cloudinary transformations into another array (similar to global configuration). I thought it make sense to update the documentation.
The commit was created by the CMS itself - not sure if all the other changes are necessary.
Checklist
Please add a x inside each checkbox:

[x] I have read the contribution guidelines.
[x] Code is formatted via running yarn format.
[x] Tests are passing via running yarn test.
[x] The status checks are successful (continuous integration). Those can be seen below.

Thanks @lordon, would it make sense to also update this code https://github.com/netlify/netlify-cms/blob/65939d978eedda86526dbafc829f8e662442f227/packages/netlify-cms-media-library-cloudinary/src/index.js#L57
to handle the change for users? We can check if someone has the old format and transform to the new one.
If so, do you mind opening an issue with your old configuration so we can verify the fix?

authors: erezrokah lordon


text:
Support for on-Demand Revalidation

I'm having issues using the on-demand revalidation when hosted on netlify.
When I test it locally by doing next build and next start it works. However, when I test it on a build-deploy or live, it does not seem to update the page.
I have validated that the API endpoint in netlify gets run, has the correct data and unstable_revalidate did not break. (in ___netlify-handler function log)
Does on-demand revalidation not work on netlify yet, or am I missing some config?
EDIT:
Also discussed in https://github.com/netlify/netlify-plugin-nextjs/discussions/1228

Originally posted by iankduffy February 18, 2022
Hello, NextJS 12.1 has added On-demand Incremental Static Regeneration currently in Beta / Unstable, just wondering if in the future if we are looking to add this to netlify plugin?

Hi @kamerat
Currently on-demand revalidation is not supported. It is on our roadmap, but we cannot share a date for support yet.

@ascorbic is unstable_revalidate unsupported still? I just tried it and it seems to not work, at least.

Still to this date with nextjs@12.2.3 res.revalidate(), it doesn' t update the page although the revalidate api endpoint handle the request. is this only for the free plan ?

@yescine @EddyVinck in progress!

Hi, any updates on progress for this?

@iurage we are keen to support this as soon as possible and are working toward it as per our roadmap

Would be good to hear an update on this. It's been a much talked about feature in my team and we're really looking forward to selling this performance benefit to our clients!

Really would like to see this for feature parity with other hosting providers. Any updates on timeline? This is bordering on dealbreaker for us as we have a massive blog that we can't realistically rebuild every time someone finds a typo.

I'm afraid I can't be any more specific than "this is being worked on". We're waiting on some new platform features that we need for this to work, but I think you'll be pleased with the results.

"this is being worked on"... i mean, seems like a trivial task given that you already support {revalidate: 60}.  If you're concerned about resource use, then just paywall it. It wouldn't be so bad if we also didn't have to wait 60 seconds for revalidation.

i mean, seems like a trivial task given that you already support
Unfortunately it's not. You know what they say are the two hard problems in computer science?

@ascorbic Any updates?

It's actively been looked at at the moment, but I can't provide a timeline yet @theooog.

?

Hey, any update on that?

@Raphael2001 not too long now 😄

Hey guys, I'm sure you're sick of people asking, but my team is really excited about this feature.
Are there any updates to this? Or maybe a timeframe? Hopefully I'm not adding too much pressure 😄

Probably easier to switch to Vercel at this point.

Probably easier to switch to Vercel at this point.

Guaranteed that right after we switch to Vercel, Netlify will fix this. But growing extremely impatient at the lack of updates on this. Terrible having to manage a NextJS implementation without on demand revalidation.

@Raphael2001 Our team would also love NextJS On-Demand Revalidation supported on Netlify. Looking forward to seeing this released! Do you have a public roadmap where we can follow along with the progress on this feature?

@justynspooner i'm afraid we don't currently maintain a public roadmap, but please be assured it's a priority and we're working hard to get this shipped

+1 - It would be great to get ongoing updates on this feature, it has major impacts to us in project usages / api limits and bandwidths

What are the current pending tasks that need to be completed for this to go live?
Because this is an open-source plugin, we'd like to contribute to it via a public checklist.

Wondering if there are any updates for this?

It has been more than a year, can we at least get an update and or ETA?

@dev-fredericfox, although it's undocumented, this feature is enabled for Next.js sites on Netlify.

Dosen't seem to work for me. Did you get it to work on 13 with the app router?
It works fine locally (Next.js 13 App router), and the webhook returns "ok" when on netlify, but the pages do not refresh.

 Revalidate does not work for me either (using Next 13 with App Router). My current workaround is to redo deploy with the option "Clear cache and retry with latest branch commit".

@dev-fredericfox, what is your revalidate: <ttl>? For example, my TTL is set to 60 seconds, so even when I run revalidate, my browser will cache the webpage until the TTL is up. Locally, Next.js will immediately update the page (when using next start) but with Netlify, it will start the TTL count the moment the page is loaded (not based on when it was built on the server).

Revalidate on Next.js 13.3 with the Pages Router works on Netlify. You could email Netlify Support asking if there is anything that needs to be "enabled" on your account, but I don't think that's the case.

To test if revalidate is working, you should server-render a timestamp and then mount that in your DOM: "build at ". That way you can see when the server revalidated the page. Or, you could open the webpage in a new browser (which hasn't cached the webpage) and it will immediately show the updated page.

@charkour thanks a lot for your feedback!
I am using the App router, not pages.
I am revalidating by tag and/or URL. My netlify demo-build is outputting a server generated timestamp, that's how I can tell it is not regenerating the page (the timestamp === the build timestamp, even after post-ing to the revalidate api route). This all works when working locally with next start.
I have not set any ttl, maybe that is the issue, what is the default? I have waited more than an hour before trying the revalidation again, but still nothing.

@dev-fredericfox, I don't believe there is any default set according to the Netlify Next.js Docs. You could try setting it to 60 seconds.
I'm not certain Netlify supports the App router On-demand ISR yet.

Hey folks,
We've released an early access version of our new runtime which you can opt-in to via the Netlify app UI or you can manually install it. This should have full support for app router and the various flavours of revalidation for pages and app router. We'll be rolling this out to everyone in the next few weeks but you can try it now.
You'll need Next 13.5+ and Node 18 but it should fix a lot of these issues.
More info here in the docs: Netlify Next.js
Let us know if you run into any issues.
Thanks!

Page router ISR and app router revalidation should now be available for everyone in our new v5 runtime.
Docs and more info here: Netlify Next.js
Closing this issue but feel free to raise a new one if you spot any issues.

authors: BilegtGG ChazUK EddyVinck MarcL Raphael2001 ascorbic azuxx caomicc cbaucom charkour dev-fredericfox elleryfamilia iurage justynspooner kamerat nickytonline orinokai osseonews pm0u theooog tomswork ui-jb yescine

repo: netlify/next-runtime


text:
NETOBSERV-1496 Backport

Backport of https://github.com/netobserv/network-observability-console-plugin/pull/475

/ok-to-test

/label qe-approved
verified bugs and regression tested for netflow table view tests.

/approve

authors: jotak jpinsonneau memodi


text:
NETOBSERV-933: make sure flows collector CRD has the right namespace for OCP [backport]

Signed-off-by: msherif1234 mmahmoud@redhat.com
(cherry picked from commit 4195a6ef4e76bbcb870f3f3b607169a6eab1c24e)

/hold
still seeing tls: bad certificate error when using images build of 1.2 branch


text:
Latte plugin 1.1.0 errors - PHPStorm 2020.3

Hey,
Latte plugin have some problems on new PHPStorm version which was recently released.
There is (for example) problem with autocompleting classes.
Reports:
stacktrace.txt
induced.txt

@kropacekt and which version of the plugin are you using?

@kropacekt try 1.1.1-RC2, install it by following this manual: https://github.com/nette-intellij/intellij-latte#testing-eap-versions

Yeah, after installing 1.1.1-RC2 is everything alright, thanks :)

authors: kropacekt mesour

repo: nette-intellij/intellij-latte


text:
Race in AddressResolverGroup

https://github.com/netty/netty/blob/4.1/resolver/src/main/java/io/netty/resolver/AddressResolverGroup.java
Here, resolvers is synchronized when calling .get(), but not in the future callback resolvers.remove(executor);

cc: @nmittler & @normanmaurer

Why not use a CHMv8 here? It seems the original concern was AddressResolver instantiation cost, but that's what computeIfAbsent is for. This would let us remove all the synchronized blocks.

Because it's java8 only... Will fix the race though

Am 03.02.2016 um 23:09 schrieb Stephane Landelle notifications@github.com:
Why not use a CHMv8 here? It seems the original concern was AddressResolver instantiation cost, but that's what computeIfAbsent is for. This would let us remove all the synchronized blocks.
—
Reply to this email directly or view it on GitHub.

@normanmaurer I'm referring to your internal fork: https://github.com/netty/netty/blob/4.1/common/src/main/java/io/netty/util/internal/chmv8/ConcurrentHashMapV8.java

@trustin WDYT?

Am 04.02.2016 um 08:08 schrieb Stephane Landelle notifications@github.com:
@normanmaurer I'm referring to your internal fork: https://github.com/netty/netty/blob/4.1/common/src/main/java/io/netty/util/internal/chmv8/ConcurrentHashMapV8.java
—
Reply to this email directly or view it on GitHub.

Fixed by https://github.com/netty/netty/pull/4844

authors: carl-mastrangelo normanmaurer slandelle

repo: netty/netty