persistence_postgres error

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I searched the LangGraph/LangChain documentation with the integrated search.
[X] I used the GitHub search to find a similar question and didn't find it.
[X] I am sure that this is a bug in LangGraph/LangChain rather than my code.
[X] I am sure this is better as an issue rather than a GitHub discussion, since this is a LangGraph bug and not a design question.

Example Code
https://langchain-ai.github.io/langgraph/how-tos/persistence_postgres/

My code is all the same as above and the difference is that I used tool_calling_agent(langgraph) not create_react_agent,

Error Message and Stack Trace (if applicable)
---> 26 for event in graph.stream(
     27     *request,stream_mode="values",
     28 ):
     29     event["messages"][-1].pretty_print()
     31 pool.close()

File /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/langgraph/pregel/__init__.py:1248, in Pregel.stream(self, input, config, stream_mode, output_keys, interrupt_before, interrupt_after, debug, subgraphs)
   1244 if "custom" in stream_modes:
   1245     config[CONF][CONFIG_KEY_STREAM_WRITER] = lambda c: stream.put(
   1246         ((), "custom", c)
   1247     )
-> 1248 with SyncPregelLoop(
   1249     input,
   1250     stream=StreamProtocol(stream.put, stream_modes),
   1251     config=config,
   1252     store=store,
   1253     checkpointer=checkpointer,
   1254     nodes=self.nodes,
   1255     specs=self.channels,
   1256     output_keys=output_keys,
   1257     stream_keys=self.stream_channels_asis,
   1258     debug=debug,
   1259 ) as loop:
   1260     # create runner
   1261     runner = PregelRunner(
   1262         submit=loop.submit,
   1263         put_writes=loop.put_writes,
   1264     )
   1265     # enable subgraph streaming

File /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/langgraph/pregel/loop.py:727, in SyncPregelLoop.__enter__(self)
    725         raise CheckpointNotLatest
    726 elif self.checkpointer:
--> 727     saved = self.checkpointer.get_tuple(self.checkpoint_config)
    728 else:
    729     saved = None

File /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/langgraph/checkpoint/postgres/__init__.py:228, in PostgresSaver.get_tuple(self, config)
    225     where = "WHERE thread_id = %s AND checkpoint_ns = %s ORDER BY checkpoint_id DESC LIMIT 1"
    227 with self._cursor() as cur:
--> 228     cur.execute(
    229         self.SELECT_SQL + where,
    230         args,
    231         binary=True,
    232     )
    234     for value in cur:
    235         return CheckpointTuple(
    236             {
    237                 "configurable": {
   (...)
    260             self._load_writes(value["pending_writes"]),
    261         )

File /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/psycopg/cursor.py:97, in Cursor.execute(self, query, params, prepare, binary)
     93         self._conn.wait(
     94             self._execute_gen(query, params, prepare=prepare, binary=binary)
     95         )
     96 except e._NO_TRACEBACK as ex:
---> 97     raise ex.with_traceback(None)
     98 return self

DuplicatePreparedStatement: prepared statement "_pg3_0" already exists

Description
https://langchain-ai.github.io/langgraph/how-tos/persistence_postgres/
kwargs={
"autocommit": True,
"prepare_threshold": 0,
}
In , when threshold is a large number, the typical llm agent outputs well, but errors occur after using the tool.
If threshold 0, llm agent output will not come out and an error will occur.
System Info
langgraph==0.2.34
langgraph-checkpoint==2.0.0
langgraph-checkpoint-postgres==2.0.0
I am using Postgres in supabase project

@naturesh could you please provide a full reproducible code snippet? what is tool_calling_agent?

from typing import Annotated, List
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.runnables import Runnable, RunnableConfig
from langgraph.graph.message import AnyMessage, add_messages
from typing_extensions import TypedDict
class State(TypedDict):
messages: Annotated[list[AnyMessage], add_messages]
class Assistant:
def init(self, runnable: Runnable):
"""
Initialize the Assistant with a runnable object.
    Args:
        runnable (Runnable): The runnable instance to invoke.
    """
    self.runnable = runnable

def __call__(self, state: State, config: RunnableConfig):
    """
    Call method to invoke the LLM and handle its responses.
    Re-prompt the assistant if the response is not a tool call or meaningful text.

    Args:
        state (State): The current state containing messages.
        config (RunnableConfig): The configuration for the runnable.

    Returns:
        dict: The final state containing the updated messages.
    """
    while True:
        result = self.runnable.invoke(state)  # Invoke the LLM
        if not result.tool_calls and (
            not result.content
            or isinstance(result.content, list)
            and not result.content[0].get("text")
        ):
            messages = state["messages"] + [("user", "Respond with a real output.")]
            state = {**state, "messages": messages}
        else:
            break
    return {"messages": result}

Create the primary assistant prompt template
primary_assistant_prompt = ChatPromptTemplate.from_messages(
[
(
"system",
"You are a helpful assistant tasked with answering user questions. "
"You have access to two tools: retrieve_documents and web_search. "
"For any user questions about LLM agents, use the retrieve_documents tool to get information for a vectorstore. "
"For any other questions, such as questions about current events, use the web_search tool to get information from the web. ",
),
("placeholder", "{messages}"),
]
)
Prompt our LLM and bind tools
assistant_runnable = primary_assistant_prompt | llm.bind_tools(tools)
from langchain_core.messages import ToolMessage
from langchain_core.runnables import RunnableLambda
from langgraph.prebuilt import ToolNode
def create_tool_node_with_fallback(tools: list) -> dict:
return ToolNode(tools).with_fallbacks(
[RunnableLambda(handle_tool_error)], exception_key="error"
)
def handle_tool_error(state: State) -> dict:
error = state.get("error")
tool_calls = state["messages"][-1].tool_calls
return {
"messages": [
ToolMessage(
content=f"Error: {repr(error)}\n please fix your mistakes.",
tool_call_id=tc["id"],
)
for tc in tool_calls
]
}
from IPython.display import Image, display
from langgraph.checkpoint.memory import MemorySaver
from langgraph.graph import END, START, StateGraph
from langgraph.prebuilt import tools_condition
Graph
builder = StateGraph(State)
Define nodes: these do the work
builder.add_node("assistant", Assistant(assistant_runnable))
builder.add_node("tools", create_tool_node_with_fallback(tools))
Define edges: these determine how the control flow moves
builder.add_edge(START, "assistant")
builder.add_conditional_edges(
"assistant",
# If the latest message (result) from assistant is a tool call -> tools_condition routes to tools
# If the latest message (result) from assistant is a not a tool call -> tools_condition routes to END
tools_condition,
)
builder.add_edge("tools", "assistant")
The checkpointer lets the graph persist its state
memory = MemorySaver()
react_graph = builder.compile(checkpointer=memory)
Show
display(Image(react_graph.get_graph(xray=True).draw_mermaid_png()))
this is my code ( langgraph tutorial example )

@naturesh i cannot reproduce the issue when invoking the graph from your example with postgres checkpointer, e.g.
config = {"configurable": {"thread_id": "2"}}
DB_URI = "postgres://postgres:postgres@localhost:5442/postgres?sslmode=disable"

with PostgresSaver.from_conn_string(DB_URI) as checkpointer:
    react_graph = builder.compile(checkpointer=checkpointer)
    res = react_graph.invoke({"messages": [("user", "hi")]}, config)

have you called PostgresSaver.setup()?  also, which postgres version are you running locally? we recommend postgres >= 16
also, i would recommend rerunning a notebook in a fresh virtual environment and see if the error is still there. let me know if you're still running into issues after that

To be exact, I am using the PostgreSQL api endpoint provided by supabase. I was able to see that setup() automatically creates four tables.

Thank you, and I'll let you know the current situation again after trying.

@naturesh please let me know if this resolved your issue!

I tried connection through variable declaration without "with" syntax, but it still doesn't work and returns the same error.

I've already run SUPABASE CLIENT twice on the server (svelde backend, python backend), but since it's the Sync client, it doesn't seem to be the same connection as a persistent pool. Could this be a problem?

I tried connection through variable declaration without "with" syntax, but it still doesn't work and returns the same error.
Can it be a problem if you don't use with syntax like this when the code structure doesn't allow you to use it? I always ended the session with connection close() at the end of the program without executing the code in duplicate or declaring connection more than once.

this shouldn't be a problem if you're closing connections. how exactly are you passing the connection to PostgresSaver? could you paste an example? are you using the connection kwargs i provided above?

from psycopg import Connection
from langgraph.checkpoint.postgres import PostgresSaver

connection_kwargs = {
    "autocommit": True,
    "prepare_threshold": 0,
}

conn =  Connection.connect(os.environ['PROJECT_DATABASE_URL'], **connection_kwargs)
checkpointer = PostgresSaver(conn)

graph = builder.compile(checkpointer=checkpointer)

from langchain_core.messages import AIMessageChunk

if __name__ == '__main__':
    request = [
        {"messages": ("user", 'hi')},
        {
            "configurable":
                {
                    "thread_id": '~~~',
                }
        },
    ]

    import pprint

    pprint.pprint(graph.invoke(*request,stream_mode="values"))

    conn.close()

This is my code. It worked when I ran it again just now, and after running it again, the above error occurs again. I'm testing it using the jupyter notebook.

my postgresql url is this format

postgresql://postgres.~:~@aws-0-ap-northeast-2.pooler.supabase.com:6543/postgres?sslmode=disable

Can it be a problem if you don't use with syntax like this when the code structure doesn't allow you to use it? I always ended the session with connection close() at the end of the program without executing the code in duplicate or declaring connection more than once.
I've already run SUPABASE CLIENT twice on the server (svelde backend, python backend), but since it's the Sync client, it doesn't seem to be the same connection as a persistent pool. Could this be a problem?

Hi this suggests you're sharing the same connection between different processes? That's not possible, you need to create a new connection for each use. We'd recommend creating a connection pool and passing that to the checkpointer

Closing due to inactivity, feel free to reopen!


chore : adding CLI helper tool

Fixes #7 #8 #10
Added 2 folders :

bin
lib

Added 3 files :

bin/check.js
lib/checker.js
gitignore

Moved index.js to lib folder and added new conflict rules.
Added specification for CLI helper tool in README.
Removed unused dependency for stylelint in package.json.
Added dependency for strip-json-comments in package.json (used in checker.js).

Just a little thing,
For lodash (that I use in lib/checker.js), do you think we need to set a specific version to avoid problems in the future ?

I was just looking at that. I think we can actually drop the lodash dependency altogether and use hasOwnProperty:
Object.keys(stylelintConfigPrettier.rules).forEach(function (conflictRuleName) {
    if (stylelintConfig.rules.hasOwnProperty(conflictRuleName)) {
        conflictRules.push(conflictRuleName);
    }
});

Side note: Are you on twitter? Would love to give you a shoutout for your work over there.

I've just cleaned the code and squash all my commits, so normally everything is fine ;)
Don't forget after the merge to publish the update on npm =)

Awesome. I'll review tonight.

Hi, how are you @shannonmoeller ? =)
If you need some clarification for the code, ask me ;)

Hey, sorry. Weekend came and life happened. Will look at soon. My apologies.

I'll try to use promise.all for the config file to test & index.js and load the rules from index.js the same way as I currently do for the file to test. So later, we could use any file we want as a base for stylelint-config-prettier (.stylelintrc, stylelint.config.js, package.json).

I've noticed something else. In my code, I pass a path to the config file for stylelint in the npm script that calls checker.js. The thing is, this is the way Stylelint searches its configuration :

Finding and loading of your configuration object is done with cosmiconfig. Starting from the current working directory, it will look for the following possible sources, in this order:
a stylelint property in package.json
a .stylelintrc file
a stylelint.config.js file exporting a JS object

So the config file path is useless. When executing the script to check if there is any conflicts, You won't need to specify the path to your configuration file for stylelint.
-> I update the PR

Good call. This looks great! Merging. I'd like to setup a few test cases before publishing.

Published as v3.0.1.


'getTime' of undefined error

Hey im trying to use your package on my own server but im getting the following error Code:
UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'getTime' of undefined     at KalenderEvents.convertEvent (/home/tom/node_modules/kalender-events/dist/lib.js:398:40)     at KalenderEvents.convertEvents (/home/tom/node_modules/kalender-events/dist/lib.js:366:35)     at KalenderEvents.<anonymous> (/home/tom/node_modules/kalender-events/dist/lib.js:547:51)     at step (/home/tom/node_modules/kalender-events/dist/lib.js:33:23)     at Object.next (/home/tom/node_modules/kalender-events/dist/lib.js:14:53)     at fulfilled (/home/tom/node_modules/kalender-events/dist/lib.js:5:58) (node:860) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1) (node:860) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
This is my Code:
import { KalenderEvents } from "kalender-events";
const ev = new KalenderEvents({
url: "https://calendar.google.com/calendar/ical/............/basic.ics"
});
ev.getEvents({
type: 'ical',
preview: 10,
previewUnits:'days',
pastview: 10,
pastviewUnits:'days'
}).then(data => {
console.log(data);
})
Also when i try to run the code on runkit its reporting the error "Error: Cannot find module 'luxon'" - is there a connection between the errors?
Kind regards, Thomas

Hello Thomas,
I tried it right now with my Google calendar, and unfortunately it's working as expected... Can you perhaps send my the complete ics to<EMAIL_ADDRESS>Maybe I see the error.
Regards,
Benjamin


Setup special keybindings using terminfo

The support for special keys right now is simply with hardcoded values,
this commit changes that to using terminfo information for the keys to
set the binds.  Should be much more general, and just work.  This also
fixes a bug in the vi-mode plugin where the special keys were not bound
because setting vi mode removes binds set in emacs mode.
Fixes the problem with 53854754e0d052 not setting the special key
keybindings and those keys not being recognized when using vi-mode.

Could you rebase this PR if you'd like to pursue it, or close it? The aspect of using terminfo for the escape sequence lookups is now being used (since #1355 and the #2608 stuff). Now this PR is providing the notion of a higher-precedence layer of key mappings, which I think can be considered separately.

I'm closing this PR, we're moving on a different direction and it's 3 years old now.


Cache put error

Somewhat addresses: #1368
This will throw with a meaningful error if we try to cache a non-existant response, BUT I think the error in #1368 is actually an issue with precaching going from temp -> final cache but I'm not 100%.

Coverage decreased (-0.1%) to 88.238% when pulling ac312e063dc071772bcdc3749ef4f240dc219faf on cache-put into ed2a847baf34c17c0f019d11cdfb1464fe3a9e19 on master.

Apologies for such a terrible PR. Think I was going back and forth on debugging, thinking of cause while deciding how to provide a little more information.

@jeffposnick another look would be appreciated.


THRIFT-3174: Modify initialism code in Go compiler to check first word

https://issues.apache.org/jira/browse/THRIFT-3174

Thanks!


⚠ Bofrost.de has degraded performance

In 4b6dc1b, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1119 ms

Resolved: Bofrost.de performance has improved in 1efe45b.


SPIKE: AWS Budgets

Add a single budget rule to see if this is useful. Can this be done by resource, by account?
What are the notification options? Let's go with the simplest, which is probably an email to our group gmail.
Do we want alerts to go to tenants as well? Should probably keep it to notifications to the platform team at first.
Adding budgets will allow us to be alerted to excessive or unusual usage
This is probably a duplicate of #1897

Eg using up lots of IPs, large instances, lots of resources etc.
Org level alerting so that it can see everything in the OU
Could be a billing thing

I think budget only gives a view on cost rather than any other resources. I had a look to see if i could set up a budget for ModP, but I don't have the access


Updated schedule endpoint and event dates

Let's change this to codable, it'll be better for the future and clean things up a bit. Also would be nice to have everything parsed the same way


Drag and drop is broken

When dropping an image, nothing happens.
It seems that we're passing the file path to ImageSelectionController.selectImage(), which expects an image object instead.

I note that #853 is still open...

Drag'n'drop works here on master and the console logs an image object. Where are you experiencing it?

Oh, that's weird. It works for me from master as well. Maybe its an issue coming from https://github.com/resin-io/etcher/pull/1229? Can you check if you can reproduce from your side from that branch?

Yeah, that seems to be it. Sorry for the noise. I'll fix it myself.


change template to use long form of discovery

I always forget what the short hand identifiers mean

The base branch requires all commits to be signed


Bootstrap a theme from a Github repo URL

It is currently possible to bootstrap a theme from a .zip file. I'm not sure if this means a zip file on your computer or remotely via a URL -- or both?
It would be cool if you could also bootstrap from a Github repo. This could allow you to create and maintain your own custom boilerplate theme which you can use to get started on a new project.
Thoughts?

This isn't a restriction of themekit, it is a restriction of the themes API https://help.shopify.com/api/reference/theme#create. They require a zip file from a publicly accessible link. To get this changed you will need to approach the Themes Editor team.

Ah I think I misunderstood how the command worked.
I thought that it unzipped the theme locally, called create using the API, and then uploaded the files with theme replace. Rereading the docs, I can see where I was wrong.
If we want this for Slate, I now feel that the best approach would be to:

Download the theme from wherever the user chooses
Call slate zip
Call theme bootstrap with the new zip and theme name specified at setup

Thoughts?

I can't just upload a zip file. I would love to but the themes api AFAIK does not support file uploads. Like I said it will only accept a src url to a zip.

@t-kelly You can always ask the theme editor team about supporting file uploads through that API but their bandwidth is usually pretty low.


Bad config encountered during initialization. The 'parent' trait of a FileContentsManager instance must be a Configurable

Hi
My setup
Python 3.4.3 |Continuum Analytics, Inc.| (default, Jun  4 2015, 15:29:08)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
jupyterhub        - JupyterHub: A multi-user server for Jupyter notebooks
INSTALLED: 0.2.0 (latest)
When I try and get a notebook running I get the following error
[D 2015-10-14 11:10:38.557 JupyterHub spawner:221] Polling subprocess every 30s
/opt/miniconda3/miniconda3/lib/python3.4/site-packages/IPython/utils/traitlets.py:5: UserWarning: IPython.utils.traitlets has moved to a top-level traitlets package.
warn("IPython.utils.traitlets has moved to a top-level traitlets package.")
/opt/miniconda3/miniconda3/lib/python3.4/site-packages/IPython/kernel/init.py:13: ShimWarning: The IPython.kernel package has been deprecated. You should import from ipykernel or jupyter_client instead.
"You should import from ipykernel or jupyter_client instead.", ShimWarning)
/opt/miniconda3/miniconda3/lib/python3.4/site-packages/IPython/utils/log.py:5: UserWarning: IPython.utils.log has moved to traitlets.log
warn("IPython.utils.log has moved to traitlets.log")
[C 2015-10-14 11:10:39.244 jupyterhub application:78] Bad config encountered during initialization:
[C 2015-10-14 11:10:39.244 jupyterhub application:79] The 'parent' trait of a FileContentsManager instance must be a Configurable, but a value of class 'main.SingleUserNotebookApp' (i.e. <main.SingleUserNotebookApp object at 0x7fc2e6db7518>) was specified.
Any Ideas?
Thanks
Rob

I think this is fixed in master. I'll try to cut a new release before too long, but installing from git should work.

Hi
Good news.  Do you know when it could be released? - I have issues with access to github on some servers.
Thanks
Rob

In the next week, probably.


[3.x] C#: Deprecate string extensions that will be removed in 4.x

Equivalent of #67031 for 3.x that avoids breaking compatibility.
Deprecated Length in favor of the string.Length property.
Deprecated Insert in favor of the existing instance method with the same signature.
Deprecated Erase in favor of StringBuilder.Remove.
Deprecated ToLower and ToUpper in favor of the instance methods with the same signature.
Deprecated BeginsWith in favor of string.StartsWith.
Deprecated EndsWith in favor of the instance method with the same signature.
Deprecated Empty in favor of string.IsNullOrEmpty.
Deprecated OrdAt in favor of the string[int] indexer.
Deprecated LStrip and RStrip in favor of string.TrimStart and string.TrimEnd.

Note
About the deprecation of LStrip / RStrip, these methods don't trim when the chars parameter is "" (no characters) but the string.TrimStart / string.TrimEnd methods trim whitespace when the trimChars parameter is an empty array.
This behavior change is probably not a common scenario but it's worth taking in consideration:

string str = "Hello World";
str.TrimStart(); // Removes whitespace
str.LStrip(""); // Removes nothing

Note
About FindLast, the C++ method was removed in 4.0, in 3.x its implementation was replaced with a call to RFind so they are the same thing but it doesn't break compatibility.
In C# FindLast is implemented as a call to string.LastIndexOf, while RFind is a PInvoke. This means recommending users in 3.x to switch to RFind will result in worse performance.
Should we instead recommend users to switch to string.LastIndexOf even if RFind still exists in 4.0? In 4.0 the RFind implementation has been replaced by a call to string.LastIndexOf but I'm not sure we want to make the same change in 3.x.

Thanks!


un supported operation on getRow

I understand there are many methods that are not supported using this api. can you explain to me the reason that why  getRow( num)  method is not supported ? also this is a feature request as well if possible.

It's not supported because this library is a streaming API. You can't seek to arbitrary positions in the sheet, you have to iterate through everything as it comes in. The purpose of this library is to minimize memory consumption so you can load huge sheets. Random access would require the sheet to be loaded into memory, which is what vanilla POI does.
I'm going to close this issue as getRow is unsupportable, but if you have more questions feel free to ask.

thanks for the explanation, and yes that is what I am currently doing to skip n number of rows to get to a specific row i assumed that it would be possible to jump to specific row without loading file into memory or just load a specific part of file into memory i.e. specific 5k rows etc. for my case vanilla POI fails even if file size is around 10 mb it takes like 15 minutes to load file into memory. This streaming api reduced that time to around 3-5 seconds depends on file size, the max i have reached is i guess 10 seconds which is alot better than vanilla POI. anyways thumbs up for this

Yeah, it's understandable that you might think that. It might be slightly faster if native support for skipping ahead was added, but we have to process the XML stream up to that point anyway. Underneath this library is just a SAX parser, so there's no way to have it skip to the Nth occurrence of an element.


Huge memory usage using intersection with how="containment"

We have some large overlaps that we are doing, and I am wondering if there is a better way that is much leveraging features of PyRanges that I've missed. Here's the scenario.
Working from a PyRanges object which itself is the result of a join between segments of interest and exons from a set of gene models (other.join(self._exon_ranges, suffix="_exon")), the question that we are after is whether each individual exon is fully contained in the segment.
Below is a subset of the data (gr).

The fields Start and End represent the segment and Start_exon and End_exon are for the exons. To get at the containments, I do the following:

Create a new PyRanges for the exons, e using Start_exon for Start and End_exon for End from gr.
Intersect those new ranges exon_ranges.intersect(gr, how="containment")
Feed that intersection back into the rest of the pipeline...

These data cause the intersection to take ~2 hours and consume > 200GB of RAM at times.
Is there a better way?
To get around this, I'm doing the containment intersects in batches of 5000, which completes in a few minutes on my laptop with reasonable RAM.
That code roughly looks like this (there's a break in there just for this example):
edf = e.df
grdf = gr.df
batch = 5000
containments = []
for start in range(0, len(grdf), batch):
    end = start+batch
    temp_e = pr.PyRanges(edf.iloc[start:end])
    temp_gr = pr.PyRanges(grdf.iloc[start:end])
    isect = temp_e.intersect(temp_gr, how="containment")
    temp = isect.df.drop_duplicates()
    containments.append(temp)
    break
pr.PyRanges(pd.concat(containments).drop_duplicates())

** I'm using drop_duplicates() here b/c if I don't, I end up with 16.7M rows.

Can you think of a better strategy or am I missing a core feature in PyRanges that would provide this functionality.
I can provide the full files if you want, but they are too big to fit here.
Thanks so much for all of your continued hard work! It's enabled so many of our projects to succeed in such a short time.

I could also take a look at the files. I have experienced seemingly abnormal memory usage from the NCLS before, but it has always turned out to be that the number of overlapping intervals it has to enumerate really is that big :)

I guess I could implement this: https://www.ncbi.nlm.nih.gov/pubmed/23129298, then people could use that as a sanity-check if an operation seems to be taking too long.


Elven Ancestry feat working incorrectly

Most of automated skill progression works fine, however, when elven level 1 ancestry feat Ancestral Longevity is selected, instead of letting you choose which skill to get temporary proficiency in it just makes you Trained in first skill you have Untrained on the list. So it's usually Acrobatics, if you have Acrobatics Trained it's Arcane, etc
There doesn't seem to be a way to change skill you get training in, since any attempt to results in skill immediately becoming Trained again, and the only way around it seems to be just removing the rule from the feat entirely

Check your toggles in the Actions page of the character sheet. You can change the skill there.

Functioning as intended. If this isn't what you see please refresh the feat on the actor.


Expose API for dashboard information

Dear Sam,
I was wondering if there's any progress on this one?  Updating the COG website statistics is currently still manual, and people are noticing discrepancies and asking about them.   This API would really help eliminate those discrepancies, and remove a manual process.
Thanks,
Tim

@tcutts Yes! As it happens I've added some undocumented things into the API to be able to better automate the QC reports while I was away on holiday last week. I will try and formalise this into a public API this week.


Remove limit for definite length decoding

I don't believe there is any need for this restriction. It is stopping us deal with large encrypted files

@indutny, just rebased against master.

@indutny ping

@indutny, so it seems that DER only allows primitive form encoding (ie. a single OCTET string with definite length) whereas CER encoding allows constructed form with 1000 octet subdivisions. If you are not restricting this library to DER specifically can you see any other issues with this?

Closing as not relevant to DER.

I cannot find any references to a limit of 3 bytes to encode the length. Java's Bouncy Castle seems to set the limit to 4 bytes seemingly due to the maximum size of an integer.
3 bytes limits us to only 16 megabytes (which we are reaching) so I have updated the patch to limit it to 4 bytes which is perhaps better than removing the restriction altogether.


Add rockylinux9 to integration-tests

Checklist

[x] make test-all (UNIX) passes. CI will also test this
[x] unit and/or integration tests are included (if applicable)
[x] documentation is changed or added (if applicable)

Description of change

The image is intended as a replacement for CentOS7.
CentOS7 does not run in a github action, rockylinux does.

I will update this to the new situation.


UPDATED: Adding capability to deconvolve using channel-by-channel templates

This is a reopening of #61.
#61 was merged, caused issues, and reverted in develop.
This PR contains the same commits and additional commits which should resolve the issues in CI tests. FHICL configurations were updated so that they were backwards compatible.
However, FD reco workflows should switch to using table dune_fd_deconvolution from Deconvolution.fcl and ProtoDUNE HD should switch to table protodunehd_deconvolution or protodunehd_mc_deconvolution.
CI tests should be run before the pull, I haven't tested this on FD sims.

trigger build

Darn it.  @aolivier23 how do I trigger the CI within dune's organisation?

:heavy_check_mark: CI build for LArSoft Succeeded on slf7 for e26:prof -- details available through the CI dashboard

:heavy_check_mark: CI build for LArSoft Succeeded on slf7 for c14:prof -- details available through the CI dashboard

:x: CI build for DUNE Failed at phase ci_tests DUNE on slf7 for c14:prof -- details available through the CI dashboard
:rotating_light: For more details about the failed phase, check the ci_tests DUNE phase logs
parent CI build details are available through the CI dashboard

:x: CI build for DUNE Failed at phase ci_tests DUNE on slf7 for e26:prof -- details available through the CI dashboard
:rotating_light: For more details about the failed phase, check the ci_tests DUNE phase logs
parent CI build details are available through the CI dashboard

Thanks @vpec0, can you make a PR in dunesw with the changes you mention?

❌ CI build for DUNE Failed at phase ci_tests DUNE on slf7 for e26:prof -- details available through the CI dashboard
🚨 For more details about the failed phase, check the ci_tests DUNE phase logs
parent CI build details are available through the CI dashboard

There were some configurable name changes which I had not propagated fully. This is fixed in the latest commit (72e0166).
I have tested building the code and run successfully the reco job used in the CI tests:
lar -n 1 -c ci_test_reco_dunefd.fcl -o prodgenie_nue_dune10kt_1x2x6_reco_Current.root -s xroot://fndca1.fnal.gov:1095/pnfs/fnal.gov/usr/dune/persistent/stash/ContinuousIntegration/DUNEFD/detsim/prodgenie_nue_dune10kt_1x2x6_detsim_Reference.root

I thought @YoannKermaidic got rid of the cold box's deconvolution. As they don't have such a big undershoot, they don't need to deconvolve the signals. Yes, I wouldn't touch those.
If I understood correctly, this deconvolution module has been already tested with data, although not with the new simulation digitizer.
Also, the deconvolution of the full streaming channel is pending. Can you confirm these two points, @vpec0?
Then we need to wait for @mjdelgadog to update the SPE templates of all channels (she told me we would have it by next Monday).
Should we wait for Maritza before merging?

I can confirm, that the code was not tested with PDHD sims, only with data.
Treatment of full streaming channels is not implemented and those channels should be ignored.
This PR does not need to wait for the templates to be ready. This is functionality implementation and configuration for reading out the templates from stashcache can be added later.

Can we merge this already? should we run again the CI tests? @absolution1 @aolivier23

trigger build

:heavy_check_mark: CI build for LArSoft Succeeded on slf7 for e26:prof -- details available through the CI dashboard

:heavy_check_mark: CI build for LArSoft Succeeded on slf7 for c14:prof -- details available through the CI dashboard

:x: CI build for DUNE Failed at phase ci_tests DUNE on slf7 for c14:prof -- details available through the CI dashboard
:rotating_light: For more details about the failed phase, check the ci_tests DUNE phase logs
parent CI build details are available through the CI dashboard

:warning: CI build for DUNE Warning at phase ci_tests DUNE on slf7 for e26:prof -- details available through the CI dashboard
:rotating_light: For more details about the warning phase, check the ci_tests DUNE phase logs
parent CI build details are available through the CI dashboard

I can't interpret the results from the CI tests. From a quick look, I don't see how the warnings and failures are related to the PR.

@aolivier23 could say more but I think the last reference update failed and needed to be investigated.
My feeling is that that we can proceed with merging the PR.  The CI successfully ran ,so shows that the workflow mechanically runs.  This is already a valuable result.

Looks good to me! Does the PDS workflow validation run automatically after the PR? It would be important to make sure that the standard configuration is still backward compatible with the latest results.

@aolivier23, we are missing your review!


ZipList is Bind

https://github.com/purescript/purescript-lists/blob/b113451e5b41cad87d669a3165f955c71cd863e2/src/Data/List/ZipList.purs#L57-L66
ZipList is Bind, in which join is just diagonal.  It's also Monad and MonadPlus.
Example: https://try.purescript.org/?gist=4888527a78d71d12df75fa628acd4719

by the way,
fix-sized array is Bind: https://github.com/sigma-andex/purescript-fast-vect/blob/209c35d9b616370dc2bb7efaa4c1d2ac4fd394bf/src/Data/FastVect/FastVect.purs#L75
ZipArray (finite nonempty array with zip longest strategy) is Bind: https://gist.github.com/ajnsit/b2aebc5f70d1192122bde7bf5f18592a#file-ziparray-purs-L100


Flaky "Update samples from CocoaPods" workflow

The pod_try_sync workflow has been flaky and occasionally times out and fails.
Failure logs show:
  warning: the following paths have collided (e.g. case-sensitive paths
  on a case-insensitive filesystem) and only one from the same
  colliding group is in the working tree:

    'Specs/5/1/1/Governor/1.0.11-APPS-1582-beta11/Governor.podspec.json'
    'Specs/5/1/1/Governor/1.0.11-apps-1582-beta11/Governor.podspec.json'
Copying contents of '/Unable' into '/Users/runner/work/maps-sdk-for-ios-samples/maps-sdk-for-ios-samples/GoogleMaps'
cp: /Unable/*: No such file or directory

Have not observed this in recent history. Can reopen if it recurs.


Mozilla Firefox port?

I want to use keysocket with firefox. Is it possible?

Sure, as a complete re-write.
On Tue, Apr 7, 2015 at 5:53 AM seniorivn<EMAIL_ADDRESS>wrote:

I want to use keysocket with firefox. Is it possible?
—
Reply to this email directly or view it on GitHub
https://github.com/borismus/keysocket/issues/116.

Maybe if you could find some spare time to port the base files, @Borismus, we could port the files needed for the websites.


Improved joiOptions object handling

Two suggestions:

When a null or undefined value is passed as joiObject, just default it to empty object. That's what joi does. Currently the code throws exception if an object type is not passed.

Invert the check for convert option.
According to joi API docs, convert option defaults to true:
convert - when true, attempts to cast values to the required types (e.g. a string to a number). Defaults to true.

The exception would be that passing an empty object as joiOptions means that convert is enabled by default, thus the hook should replace the data with the converted value by default.

Thanks for posting.
I'm not sure what joiObject refers to. Neither this repo nor the joi docs seem to have such a name. If you mean joiSchema, I do want throw if its missing. Otherwise neither context.data nor context.result[.data] can be null, unless the hook is being used improperly. And I do want to throw in that case.
I thought about what you pointed out about the convert option. I feel, i.n general, its more important the hook should address its own environment rather than rigidly follow joi. Then I think its more a matter of taste. I wouldn't don't feel comfortable having values change on me, perhaps without me realizing it. I would rather explicitly state to do it.
There is also now the issue of this being  breaking change.

@eddyystop I agree with you, but once we decide to work with Joi, we make this decision being aware of what Joi provide us out of the box. I think it's more reliable to anyone who wants to validate with Joi, to keep its default options.

The repo has to remain backward compatible where possible. If you can do that, please submit a PR.

Closing this now that #9 has been merged.


[fix](alter inverted index) fix write edit log in replaymodifyTableAddOrDropInvertedIndices function

Proposed changes
Issue Number: close (https://github.com/apache/doris/issues/16976)
Problem summary
Actually, when modifyTableAddOrDropInvertedIndices no need write logAlterJob edit log, because write logModifyTableAddOrDropInvertedIndices is enough
Checklist(Required)

[ ] Does it affect the original behavior
[ ] Has unit tests been added
[ ] Has document been added or modified
[ ] Does it need to update dependencies
[ ] Is this PR support rollback (If NO, please explain WHY)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

Add some test case will be more better.

run buildall

TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 34.12 seconds
stream load tsv:          464 seconds loaded<PHONE_NUMBER>9 Bytes, about 153 MB/s
stream load json:         37 seconds loaded<PHONE_NUMBER> Bytes, about 60 MB/s
stream load orc:          68 seconds loaded<PHONE_NUMBER> Bytes, about 15 MB/s
stream load parquet:          28 seconds loaded 861443392 Bytes, about 29 MB/s
https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/tmp/20230221101955_clickbench_pr_101022.html


chore: drop Python 3.8 and start testing against Python 3.13

Description
I was working on #643 and realised that we should now drop Python 3.8 since it has passed its EoL date, now. I also added Python 3.13 to the testing configuration here and updated the related metadata for this in pyproject.toml.

I think I've commented about this somewhere before, but I would be okay with going another mile and dropping Python 3.9, too, and conforming to https://scientific-python.org/specs/spec-0000/, does that sound like a plan for v1.8.0, @fjosw? But then again – I think we can reasonably support Python 3.9 and drop it only after it completely stops working and we can't do anything to fix it, or until it reaches EoL status in October next year?

I just checked that python 3.9 still receives security support until 31 Oct 2025 so unless we encounter issues I would propose to have tests running until then or what do you think @agriyakhetarpal?

Makes sense to me; let's keep support till 2025, then!


Activity bar will be great if it looks small.

The activity bar is really not good, most of the developers don't like its big width or size. I am not talking about just decrease the font size. Most people don't like its UI design. It will be great if the activity bar looks like this below. It looks great and also takes a small space.

most of the developers don't like its big width or size.
Most people don't like its UI design.

Source?

We've received similar requests in the past with little activity so will close this as out of scope https://github.com/microsoft/vscode/issues/82996 https://github.com/microsoft/vscode/issues/73713


Pushes visual shader code preview to separate window

Fix #42612

Does it work fine in single window mode too? I guess it would become an embedded popup?

Does it work fine in single window mode too? I guess it would become an embedded popup?

Does it work fine in single window mode too? I guess it would become an embedded popup?

Yes, it works.

Does it work fine in single window mode too? I guess it would become an embedded popup?

Yes, it works.

Thanks!

Thanks!

It's a little weird that the button still works as a toggle. I don't think any other editor window works like this.

It's a little weird that the button still works as a toggle. I don't think any other editor window works like this.

I don't see a problem - this window should have only one instance and the toggle button does indicate that window is opened and controls its visibility. Yes, it a bit unusual across engine, but why not?

I don't see a problem - this window should have only one instance and the toggle button does indicate that window is opened and controls its visibility. Yes, it a bit unusual across engine, but why not?


bm-docs: Add missing port to matchbox_http_endpoint

matchbox_http_endpoint does not specify the port number used in the BM TF example. This leads to machines not properly PXE booting using the example module provided, as they cannot reach the matchbox service.

Matchbox deployed on Kubernetes and exposed via Ingress is via port 80 and doesn't need to be specified (example came from my own infra and it's valid) . Matchbox on a standalone server does default to 8080 though.
I'd prefer this be clarified in docs since either setup is valid for different audiences.


Allow a new Decoration type to represent ticks on the vertical scroll bar

PyCharm does this by default for linter warnings and errors, Chrome uses it to show search results. It makes it easy to look at the scroll bar and see whether certain parts of the file may be of interest.

Refs atom/find-and-replace#529.

For this issue, I have been working on this package
https://atom.io/packages/scroll-searcher


[Task]: Code generator

Goal
Turn AST's into webassembly
Task Description
This task does not include any optimisation

In Wat:
Out junctions can be generated as global variables, these are to be re-initalised by the node producing said out variable
To generate the flow of node calls, the nodes can simply call each other


[FLINK-25479][rpc] Serialize TaskStateSnapshot when sending to JM from TM

What is the purpose of the change
CheckpointCoordinator doesn't expect to receive the same object more than once:
in production environment, state handles are (de)serialized while sending via RPC.

However, in tests, local RPC may be used, without (de)serialization. This causes
test failures when using state backends which re-use objects (e.g. materialized
state of ChangelogStateBackend).
Using the same KeyedStateHandle *object* should be allowed for backends.

This change makes RpcCheckpointResponder serialize TaskStateSnapshot when
sending to JM from TM.

Verifying this change
Added StateHandleReuseITCase
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? no
If yes, how is the feature documented? no

Build failure unrelated (FLINK-25771), build passed for private branch, merging.


Rebuild sources if configuration is changed

This commit adds a check for configuration data changes. If a change in
configuration data is detected, all the sources in the tree are rebuilt.
This is a fix for #2073. #2162 was originally proposed as a fix, but it
was agreed that --preinclude is a more convenient way to include
configuration data, since it can be used to change the behaviour of
source files that don't include "mbed_config.h" directly, which is a big
advantage when importing 3rd party source trees. Compared to #2162, this
commit has the disadvantage of rebuilding all the source files if a
configuration change is detected, but it was agreed that the advantage
of using --preinclude outweighs the disadvantage of the increased
compilation time.

@0xc0170 @screamerbg

LGTM


install is already in $MEDIA

Could you make the commit message a bit less cryptic?

+1 once commit message is fixed

(I'd appreciate keeping this a bit open as I'd like to debug PR testing)

@vuntz I guess this is superseded by https://github.com/crowbar/crowbar/pull/2125 ? then I will just close it

@MaximilianMeister nope, I haven't taken your change in my PR. This will conflict, but we can rebase one or the other easily. Or I can take your change there if you prefer.

@vuntz either way works for me, whatever is faster. do it as you prefer :-)

+1


Fixed foodcritic issues after Chef 13 release

Test Kitchen Evidence: https://gist.github.com/bbaugher/02e752e721853ef342c57c4c2287c7d4
We were originally breaking these 4 rules,

http://www.foodcritic.io/#FC066 - Ensure chef_version is set (new in Chef 13)
http://www.foodcritic.io/#FC069 - Not standardized license
http://www.foodcritic.io/#FC071 - Missing License file
http://www.foodcritic.io/#FC078 - License not OSI approved

We are using Apache 2.0 license so just had to tweak our metadata. Additionally foodcritic couldn't seem to find our License.txt file and insisted it be License

Merging this to fix builds


Transparent transactions not returned from SDKSynchronizer.allTransactions()

Describe the issue
Please provide a general summary of the issue you're experiencing
Our application is calling allTransactions() on the SDKSynchronizer object, expecting transparent transactions to be included in the list. Instead, only shielded transactions are present.
Can you reliably reproduce the issue?
If so, please list the steps to reproduce below:

Checkout repo https://github.com/nighthawk-apps/nighthawk-ios-wallet/tree/feature/backup-settings
Run app in Xcode on a simulator or physical device.
Create a new wallet or restore an existing one.
Send funds to the transparent address of the wallet
Let the wallet sync completely

Expected behaviour
Tell us what should happen
Upon sync completion, the app should show a transparent balance and should query for all transactions. On the transaction history screen, the transparent transaction you just sent should be visible.
Actual behaviour + errors
Tell us what happens instead including any noticeable error output (any messages
displayed on-screen when e.g. a crash occurred)

If the above steps were performed on a fresh wallet, even after the transparent txn is synced and the balances are updated, the list of transactions will still be empty. If done with an existing wallet, only previous shielded transactions will show in txn history.

App Version: 2.0
iOS Version: iOS 17
Device: (if applies) iPhone 14 Pro Max

Any extra information that might be useful in the debugging process.

This should be addressed in rc2, pleazse try.

@LukasKorba i can confirm that I am seeing incoming transparent transactions, thank you.

Closing as resolved


updating include and using statements.

modified create game future to be a private class member.

LGTM, but it looks like there are merge conflicts. Can you pull from the repo, handle the merge, and push the update?


Direct messages.

Hi, can you post an example on how to post a DM ?
thank you.

Hey! Turns out we weren't stringifying nested objects, so I've just fixed that in 6ae2f99c35eda2b8d58ef5b68fe6f0017d8a9cb0
@peterpme, can you please npm publish?
@neeeeds: In the meantime, if you install the package from this repo, how does this work for you?

it executes, but it does not post a new message. checked the keys and secrets, everything is ok but it does not work.

What's in the response object?

nothing.
it executes and then nothing.

now i get it is not defined.

Looks like Twitter had a transient auth error. All tests pass now, including sending DMs, and I've verified the DMs were received.

And now i am having this error
any idead why ? thank you very much.

Tests should be run with Jest rather than mocha (npm run test), but some will fail on your machine because you don't have the test account's credentials (@nodejs_lite).
I pointed at the test to help you copy/paste code to send DMs. Can you try that in a standalone script, replace the recipient_id with the id of the user you want to DM (get it from http://gettwitterid.com), then console.log(response)?

hi mate, i tested it with the new example and it workded very well, thank you for this great job.


Block not found after submission but get rewards in wallet (new algo, Lbk3)

Description
I get the following error after submitting the block:
Block 3243 submission failed for pool because block was not found after submission
However, looking at the daemon, it's accepting the block and I get the rewards in my wallet.
Steps to Reproduce

[First Step]
[Second Step]
[and so on...]

Expected behavior
block would show up as rewarded
Actual behavior
block doesn't show up but rewards do (in the wallet only)
Reproduces how often
100%
Version
Running v.30 but have added Lbk3 support
Additional Information
Looking through the code, I'm not sure why it's not able to track the submission after it submits it.  I'm sure I missed something on my attempt to add Lbk3 support.  This is on a testnet, could that have anything to do with it?

I'm pretty sure that the blockhasher digest is configured wrongly. Try with Sha256D or alternatively with DigestReverser(your-header-hasher).
Ohh and please don't file bugs against a private release :)


Focus on marginal boot peformance

In addition to measuring/improving our performance for booting N containers, we should also have a look at the cost to boot the (N+1)th.  That shouldn't really increase much for reasonable N.

Migrated to Trello.
https://trello.com/c/BLnuQN6K


[MM-22674] Clicking Hashtag in the Popover of channel header now searches for term

Summary

Clicking on a hashtag in the channel popover now searches for the term instead of doing nothing.
Ticket Link

https://mattermost.atlassian.net/browse/MM-22674
Screenshots

Creating a new SpinWick test server using Mattermost Cloud.

Mattermost test server created! :tada:
Access here: https://mattermost-webapp-pr-5037.test.mattermost.cloud

Account Type
Username
Password

Admin
sysadmin
Sys@dmin123

User
user-1
User-1@123

Test server destroyed

@bradjcoughlin please help review

Will try to auto merge this PR once all tests and checks are passing. This might take up to an hour.


Fix/allow select tags keyboard menu

Simple change to allow a V-Select with tags or combobox to select any of the menu items with the keyboard, if some incompatible props are passed in.

going to decline this, we'll override this method where needed since vuetify doesn't want to promote tags being used with return-object


Runtime validation for fields

i.e. string matches regex, int is positive, string is an ISO 8601 date

Closing this issue for now. While we've heard it since we are not actively staffing this work rn, this issue is just creating pollution.


fix build by waiting for the reload logs to be present

@ryanjbaxter this should fix the failing build.


Help adding Vim-Hardy PlugIn

Can someone please help install Vim-Hardy in spf13 running in Windows 7?
https://github.com/4Evergreen4/vim-hardy

Please provide more detail; what are the issues you are seeing and what steps did you take to produce them?


Added support for JWT login

Very simple addition to support JWT login as supported in Synapse

@iodbh could you also sign off on changes per CONTRIBUTING.rst, please?
Thanks so much for the PR. :)

I also think more thought needs to be given to whether we want to have separate
methods for every single sort of "throw some data at the homeserver and hope for
the best" login methods rather than rolling them all into a user-interactive
model like that suggested by #82 instead.

As I haven't had a response from original PR submitter in several months, I'm closing this. If anyone wants this, feel free to ping me, and we'll reopen.


Introduce ValueStackRef abstraction

This allows us to cache the stack_ptr with one fewer indirections for massive speedups across the board according to benchmarks I performed on my local machine.

Does it improve performance by reducing indirection address?

yes, it is similar to the pc cache field.

Codecov Report

Merging #459 (e59264f) into master (115d308) will increase coverage by 0.03%.
The diff coverage is 93.56%.

@@            Coverage Diff             @@
##           master     #459      +/-   ##
==========================================
+ Coverage   79.42%   79.45%   +0.03%
==========================================
  Files          71       73       +2
  Lines        6198     6222      +24
==========================================
+ Hits         4923     4944      +21
- Misses       1275     1278       +3

Impacted Files
Coverage Δ

wasmi_v1/src/engine/stack/mod.rs
79.10% <ø> (ø)

wasmi_v1/src/engine/stack/values/mod.rs
84.12% <84.12%> (ø)

wasmi_v1/src/engine/stack/values/vref.rs
98.43% <98.43%> (ø)

wasmi_v1/src/engine/executor.rs
98.41% <100.00%> (+0.01%)
:arrow_up:

wasmi_v1/src/engine/stack/values/tests.rs
100.00% <100.00%> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Help me

PS D:\MLpack\DEV\vcpkg> .\vcpkg install mlpack:x64-windows
The following packages will be built and installed:

armadillo[core]:x64-windows

boost[core]:x64-windows

boost-accumulators[core]:x64-windows

boost-align[core]:x64-windows

boost-asio[core]:x64-windows

boost-assign[core]:x64-windows

boost-beast[core]:x64-windows

boost-bimap[core]:x64-windows

boost-callable-traits[core]:x64-windows

boost-circular-buffer[core]:x64-windows

boost-compute[core]:x64-windows

boost-context[core]:x64-windows

boost-contract[core]:x64-windows

boost-convert[core]:x64-windows

boost-coroutine[core]:x64-windows

boost-coroutine2[core]:x64-windows

boost-crc[core]:x64-windows

boost-disjoint-sets[core]:x64-windows

boost-dll[core]:x64-windows

boost-dynamic-bitset[core]:x64-windows

boost-fiber[core]:x64-windows

boost-flyweight[core]:x64-windows

boost-geometry[core]:x64-windows

boost-gil[core]:x64-windows

boost-graph[core]:x64-windows

boost-graph-parallel[core]:x64-windows

boost-hana[core]:x64-windows

boost-heap[core]:x64-windows

boost-hof[core]:x64-windows

boost-icl[core]:x64-windows

boost-interprocess[core]:x64-windows

boost-interval[core]:x64-windows

boost-local-function[core]:x64-windows

boost-lockfree[core]:x64-windows

boost-log[core]:x64-windows

boost-logic[core]:x64-windows

boost-metaparse[core]:x64-windows

boost-mp11[core]:x64-windows

boost-msm[core]:x64-windows

boost-multi-array[core]:x64-windows

boost-multiprecision[core]:x64-windows

boost-odeint[core]:x64-windows

boost-parameter[core]:x64-windows

boost-parameter-python[core]:x64-windows

boost-poly-collection[core]:x64-windows

boost-polygon[core]:x64-windows

boost-process[core]:x64-windows

boost-program-options[core]:x64-windows

boost-property-map[core]:x64-windows

boost-ptr-container[core]:x64-windows

boost-python[core]:x64-windows

boost-qvm[core]:x64-windows

boost-random[core]:x64-windows

boost-safe-numerics[core]:x64-windows

boost-scope-exit[core]:x64-windows

boost-signals2[core]:x64-windows

boost-sort[core]:x64-windows

boost-stacktrace[core]:x64-windows

boost-statechart[core]:x64-windows

boost-test[core]:x64-windows

boost-timer[core]:x64-windows

boost-type-erasure[core]:x64-windows

boost-ublas[core]:x64-windows

boost-units[core]:x64-windows

boost-uuid[core]:x64-windows

boost-vmd[core]:x64-windows

boost-wave[core]:x64-windows

boost-xpressive[core]:x64-windows

boost-yap[core]:x64-windows

clapack[core]:x64-windows
mlpack[core]:x64-windows

openblas[core]:x64-windows

openssl[core]:x64-windows

openssl-windows[core]:x64-windows

python3[core]:x64-windows
Additional packages (*) will be modified to complete this operation.
Starting package 1/75: openblas:x64-windows
Building package openblas[core]:x64-windows...
-- Using cached D:/MLpack/DEV/vcpkg/downloads/xianyi-OpenBLAS-v0.3.6.tar.gz
-- Using source at D:/MLpack/DEV/vcpkg/buildtrees/openblas/src/v0.3.6-30d8688cb4
-- Downloading http://strawberryperl.com/download/<IP_ADDRESS>/strawberry-perl-<IP_ADDRESS>-32bit-portable.zip...
-- Downloading http://strawberryperl.com/download/<IP_ADDRESS>/strawberry-perl-<IP_ADDRESS>-32bit-portable.zip... Failed. Status: 7;"Couldn't connect to server"
CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:172 (message):
Failed to download file.
If you use a proxy, please set the HTTPS_PROXY and HTTP_PROXY environment
variables to "https://user:password@your-proxy-ip-address:port/".
Otherwise, please submit an issue at https://github.com/Microsoft/vcpkg/issues

Call Stack (most recent call first):
scripts/cmake/vcpkg_find_acquire_program.cmake:262 (vcpkg_download_distfile)
ports/openblas/portfile.cmake:42 (vcpkg_find_acquire_program)
scripts/ports.cmake:71 (include)
Error: Building package openblas:x64-windows failed with: BUILD_FAILED
Please ensure you're using the latest portfiles with .\vcpkg update, then
submit an issue at https://github.com/Microsoft/vcpkg/issues including:
Package: openblas:x64-windows
Vcpkg version: 2018.11.23-nohash
Additionally, attach any relevant sections from the log files above.

cd D:/MLpack/DEV/vcpkg/downloads
wget http://strawberryperl.com/download/<IP_ADDRESS>/strawberry-perl-<IP_ADDRESS>-32bit-portable.zip
or more..
copy strawberry-perl-<IP_ADDRESS>-32bit-portable.zip to folder D:/MLpack/DEV/vcpkg/downloads

Hi @YarikTiutiunnyk, please download http://strawberryperl.com/download/<IP_ADDRESS>/strawberry-perl-<IP_ADDRESS>-32bit-portable.zip manually, put it into vcpkg/downloads/ and rerun install command.
Thanks.

@Voskrese are you sure @YarikTiutiunnyk has wget?
@YarikTiutiunnyk: it seems that you cannot download http://strawberryperl.com/download/<IP_ADDRESS>/strawberry-perl-<IP_ADDRESS>-32bit-portable.zip, although the link is valid.

Please check if you can reach the file, for example, with a browser.
If you can, something prevents your script downloading the file. For me, it was my firewall that prohibited (AFAIK) cmake to access the internet. Try to allow your script to reach the file, for example, by configuring your firewall.
If you cannot do step 2, @Voskrese suggested to download the file manually with another program, like the command line program wget, or you can also download it with a browser. After you got the file, copy it to vcpkg/downloads folder, D:/MLpack/DEV/vcpkg/downloads.

@danieltuzes He obviously uses windows.
Maybe we should prompt it in powershell.
There are too many such problems.

but this comsnd also does not work
and I you can't reach the file with a browser.
PS C:\Users\Yarik> cd D:\MLpack\DEV\vcpkg\downloads
PS D:\MLpack\DEV\vcpkg\downloads> wget http://strawberryperl.com/download/<IP_ADDRESS>/strawberry-perl-<IP_ADDRESS>-32bit-portab
le.zip
wget : Unable to connect to the remote server
At line:1 char:1

wget http://strawberryperl.com/download/<IP_ADDRESS>/strawberry-perl-5.24 ...

  + CategoryInfo          : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-WebRequest], WebExc
 eption
  + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand

@YarikTiutiunnyk  Of course, you don't have wget. Can you download it using IE or other tools?

@JackBoosY  it seems he has wget (I also have, it comes with many packages). If @YarikTiutiunnyk is right, and cannot access with a browser, there must some network problem.
@YarikTiutiunnyk I provide a link to my own server, you can download it from here:
Replace AAA with tuzes.elte in
http://AAA.hu/strawberry-perl-<IP_ADDRESS>-32bit-portable.zip

Thank you so much


Some bug with "Detail: Unauthenticated   Invalid bearer token provided. Detail: Unauthenticated"

Dbeaver log:
cfjd.org.apache.arrow.flight.FlightRuntimeException: UNAUTHENTICATED: Invalid bearer token provided. Detail: Unauthenticated
cfjd.org.apache.arrow.flight.FlightRuntimeException: UNAUTHENTICATED: Invalid bearer token provided. Detail: Unauthenticated
Invalid bearer token provided. Detail: Unauthenticated
Tableau log:
Unable to complete action
Bad Connection: Tableau could not connect to the data source.
Error Code: FAB9A2C5
cfjd.org.apache.arrow.flight.FlightRuntimeException: UNAUTHENTICATED: Invalid bearer token provided. Detail: Unauthenticated
Generic JDBC connection error
cfjd.org.apache.arrow.flight.FlightRuntimeException: UNAUTHENTICATED: Invalid bearer token provided. Detail: Unauthenticated
Context:
After docker run I can properly get access to dbever. but when I just try to connect with tableau it show UNAUTHENTICATION issue . After I go back to dbever and it shows same UNAUTHENTICATION issue till I restart docker.
This is terminal docker log.
2023-11-06 22:06:30 Client running SQL command:
2023-11-06 22:06:30 SELECT * FROM "customer";  # Dbeaver select
2023-11-06 22:06:30
2023-11-06 22:06:35 Client running SQL command:
2023-11-06 22:06:35 SELECT VERSION();  # dbeaver version select
2023-11-06 22:06:35
2023-11-06 22:07:17 Bearer Token verification failed with exception: failed to verify signature: VerifyFinal failed   #Tableau try to access
2023-11-06 22:07:17 Client running SQL command:
2023-11-06 22:07:17 SELECT 1;
2023-11-06 22:07:17

It happens when I try to connect from Tableau with "Mysql" dialect and Postgres dialect. It shows nothing with SQL92.

hi @YuriyGavrilov - the JDBC client can cache tokens - so it may likely be trying to use a token that was generated for localhost before you ran in Docker.
I would suggest using a different value for the FLIGHT_PASSWORD environment variable when you start Docker - that should force the client to invalidate the cache, and you should get a new token.  Could you try that, and let me know if it works?

Also - I used the PostgreSQL dialect when I tested on my end - it seemed to work well.  I did not test MySQL - as DuckDB seems to use more of a PostgreSQL dialect...

I found that adding &token=null to the jdbc URL in Tableau helped.  It seems to force Tableau to grab a fresh auth token using username/password....

Thanks for testing...  It seems we need to overhaul either the server's auth code, or allow a way to force a token refresh in the JDBC driver with an argument.  I'll research this more and try to find a good strategy...

@YuriyGavrilov - I believe I've fixed the issue.  Could you validate?

@prmoore77 I've also made some changes in arrow. May be you should know it to make some adoption. https://github.com/apache/arrow/issues/38253 (https://github.com/apache/arrow/issues/38737 - this PR)  or may be need to add different issue it but anyway I put it here may be nothing needs to do)

hi @YuriyGavrilov - unfortunately, my Tableau trial license expired - so I'm unable to test things with it now.  Before it expired, I believe I had it all working with the Arrow Flight SQL JDBC driver version: 14.0.1, however.  I chose the PostgreSQL dialect - and I was able to view tables, etc. - but I didn't capture screenshots, unfortunately.
I wish I could help more, but it may take me a while to get a Tableau license...

it't ok. @prmoore77
for the 14.0.1 I get this message.

I ve download it with this artifact:
<dependency>
    <groupId>org.apache.arrow</groupId>
    <artifactId>flight-sql-jdbc-driver</artifactId>
    <version>14.0.1</version>
</dependency>

it works fine in dbeaver.

I use this doc to locate it https://help.tableau.com/current/pro/desktop/en-us/examples_otherdatabases_jdbc.htm?_gl=113o39fp_gaNjU2NzcyNDc5LjE3MDA5NDA1MDc._ga_8YLN0SNXVS*MTcwMTcyNTgzOS41LjEuMTcwMTcyNTg3MS4wLjAuMA..
Specify the right JDBC driver
JDBC drivers are self-contained .jar files. Place the .jar files in the folder for your operating system. (You need to create the folder if it doesn't already exist.)

Windows: C:\Program Files\Tableau\Drivers
Mac: ~/Library/Tableau/Drivers
Linux: /opt/tableau/tableau_driver/jdbc

Oh - also, I think you can now remove the &token=null from the JDBC url (since we updated the code)...

Did you remove other versions of the driver? Maybe there can only be one version in the folder...

Yep, sure

@prmoore77 Finally I run flight sql, but with kamu-cli project ... to be sure that tableau is working.

tables showed properly and with sql92 dialect. (ok, 98% properly :), some sql errors still exist
based on this example https://github.com/kamu-data/kamu-cli/tree/master/examples/trading
and run this
cd trading
kamu init
kamu add . --recursive
kamu pull --all
kamu sql server --flight-sql

Connect using URL: jdbc:arrow-flight-sql://<IP_ADDRESS>:10000?useEncryption=false
Use 'kamu' as login and password

@YuriyGavrilov - Great news!  Did you have to change any of the Flight SQL server code, etc?  Is there a fix I need to make?  Thanks!

By the way - that kamu tool looks very cool!  Thanks for sharing.

hi @YuriyGavrilov - I got a Tableau license - and tested with the default TPC-H database that comes with the docker image for this example Flight SQL server.
I started the Flight SQL server with:
docker run --name flight-sql \
           --detach \
           --rm \
           --tty \
           --init \
           --publish 31337:31337 \
           --env FLIGHT_PASSWORD="flight_password" \
           --env PRINT_QUERIES="1" \
           --pull missing \
           voltrondata/flight-sql:latest

I am using the 14.0.2 JDBC driver version - with JDBC url: jdbc:arrow-flight-sql://localhost:31337?useEncryption=true&disableCertificateVerification=true
I choose: PostgreSQL dialect - and it seems that all is working:

Can you verify on your end?

Yep, sure I will. Are use Mac OS or Win?

Mac OS
On Dec 20, 2023, at 3:21 PM, Yuriy Gavrilov @.***> wrote:

Yep, sure I will. Are use Mac OS or Win?
—
Reply to this email directly, view it on GitHubhttps://github.com/voltrondata/flight-sql-server-example/issues/11#issuecomment-1865083206, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AE6YADJR4SJJFOZZ76WF343YKNCEZAVCNFSM6AAAAAA7AACNV6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNRVGA4DGMRQGY.
You are receiving this because you were mentioned.Message ID: @.***>


Using git hub sign in.

Let person sing up with github.
Save credentials on server for workers. (Securely)

Have found a workflow.

WebPage: On the click on the logging button. Redirect browser to GET https://github.com/login/oauth/authorize
Have a random state and save it in session storage.
WebPage: Validate state.
WebPage: Send code to Control server to exchange for a access key
Server: Send a request to github to exchange code for access key.
Server: Save key with the user  so that it can be used by workers and authentication.
Server: return the access key and user data.
WebPage: Save access key in Session storage. For future use.

Maybe I should just generate my own access tokens and keep the git hub once server side.
Do the client need to make GitHub calls on its own? I think.


starts default predictor in clusternet-agent

Signed-off-by: junqian<EMAIL_ADDRESS>add predictor server into agent

What type of PR is this?
kind/feature
What this PR does / why we need it:
starts default predictor in clusternet-agent
Which issue(s) this PR fixes:

A follow-up of #346
Special notes for your reviewer:

Codecov Report

Merging #355 (1a0d93a) into main (e41ed90) will decrease coverage by 0.02%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #355      +/-   ##
==========================================
- Coverage   13.21%   13.19%   -0.03%
==========================================
  Files          52       52
  Lines        5212     5221       +9
==========================================
  Hits          689      689
- Misses       4475     4484       +9
  Partials       48       48

Impacted Files
Coverage Δ

...ithub.com/clusternet/clusternet/pkg/agent/agent.go
1.84% <0.00%> (-0.06%)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e41ed90...1a0d93a. Read the comment docs.


Modify install scripts

Based on conclusions for target OS, node version and mongo version (if required) in #17 . Modify the install scripts as they are old. Node is installed without nvm and unnecessary sudo prompts.

Moving to Ubuntu 18.04 and Node.js latest LTS version 10.15.3

Removing sudo dependency for the install script

As we install Nodejs for the system. It will conflict with nvm if we have it installed. Use  nvm use system to use the system installed Nodejs. In our case, it should be 10.15.3.

Mongo installation should be removed in the future as Kuiper itself doesn't use it. The apps and services integrated into it (for now) use it.
For now, updating MogoDB to the latest version which is compatible with Ubuntu 18.04.

@aqual3o  Why do we need nginx and redis for if we exclude services and apps from Kuiper?

@griimick We don't.
I would say let's just remove auth and user service and every other garbage from kuiper. Instead let's write a very basic single file "example" app which discovers some "example" service and simply tries to ping it.
Then we will have a clear picture how tangled our framework is with the buisness logic. What modules we actually need.
Let's make the simplest of things first. A framework which will let some apps discover services onto a netowrk. Take the bare minimum and make it functional. And move from there. Otherwise with auth and user still in directory we can just keep rumaging through garbage to make all things functional at once and not make anything worthwhile in the process.
Let's throw the garbage out. See what remains and fix it first is the base thought behind this rant!

And delegate Mongo, Nats and redis to user. We can list NATS as a dependency and only hit it's default port to begin with (configurabel framework can follow).
Mongo and redis or what not is part of user's business logic. We don't care what DB they use or how they do their cache management.

I am noting these points down as we eventually want to remove all the services and app from this. But I would suggest that we make setting up our dev environments easy and fast. Removing the apps and service and other unnecessary scripts.

Removing all the dependencies. Just keeping one script to help one set a development environment targeting Ubuntu 18.04 and Node.js latest LTS version 10.15.3.


Change default flavors

Change default flavors from to-be-legacy mini & small flavors to
standard ones.

You can also consider hpc-gen* if oversubscribed isn't acceptable for some reason.


XProjectByFile() can destroy original properties that was prepared for solution

The essence of the error is as follows,
For some new instance of XProjectEnv with specific sln properties:
https://github.com/3F/MvsSln/blob/cd39a8dff3b526d2294be1c2de2fdf93f51ecb86/MvsSln/Core/XProjectEnv.cs#L470-L475
*Using slnProperties we assume exactly sln properties.
Then, if we try to load the project that was not yet presented in collection, it will cause call XProjectByFile() with properties Configuration|Platform specified for this project. That's ok. However, it will also consider Configuration|Platform as a new pair for sln properties too.
This moment is possible whenever we need a call XProjectByFile(). It happens only when a specific project with the specific configuration has not yet been loaded at this point
https://github.com/3F/MvsSln/blob/cd39a8dff3b526d2294be1c2de2fdf93f51ecb86/MvsSln/Core/XProjectEnv.cs#L560-L565
And will cause error only if different cfg between sln and prj.

The error is already fixed in my local branch, let me just write some tests for it.


int, double, and String have inconsistent capitalization

This issue was originally filed by<EMAIL_ADDRESS>
Please consider renaming "String" to "string.  I know, I'm mostly bikeshedding.  But why isn't "String" "string" if "Int" and "Double" are also lowercased?
I get the impression you lowercased "int" and "double" to make them feel like primitives and to match Java.  Perhaps String is capitalized to match Java, but it's lowercased in C#, so that's a weak argument.

Why has this issue been closed? this leads to inconsistency in the language.

Its a shame.
Ridicoulous, for a language that has an enourmous coding style guide.
Somebody without any logical reason decided to make it lower,than we must accept that.
WHo decided to close it? Have somebody made any kind of pool,or it was the new boss,who just like Strings to be capitalized.

Why is this issue closed?

There are millions of lines of Dart code inside Google and outside, so it is too costly of a change to make now compared to the value we would get in return.

I was under the impression that Dart, being something new, would address inconsistencies better that other languages...was I so wrong?

I like what C# does, you can use string or String

I’m new to Dart but not programming. First question I have is “Why String isn’t string?”

The real question, if you are going for consistency, is why int is not Int. Dart generally capitalize types, so the exception here is not String, it is int, double and bool (and void, but that wasn't originally a real type).
So if you want consistency, we should make int be Int. Or maybe it should even be Integer, because we also discourage abbreviations.
In Java, int is lower case and Integer is capitalized because the former is a primitive type and the latter is an object type. Dart does not have that distinction, our int is an object type, so we don't actually have any consistency-based reason for making int short and lower-case.
Or maybe there is one reason: int, double and bool instances are automatically canonicalized. You cannot have two int instances with the same value without them being identical. That's the one property that Dart has taken from Java/C#/JavaScript primitive types, and it does not apply to strings (like it doesn't in Java and C# either).
The real reason Dart has those exceptions (int, double and bool) is because of trade-offs between usability, user expectation and consistency. Dart was designed as a pragmatic language. It values consistency, but not at any price. The familiarity/user-expectation goal was generally influenced by Java, JavaScript and C#, and it was considered better usability to make those types short, recognizable and easy to write.
Making String be string was not a trade-off that seemed worth it. It would probably have worked perfectly well if we had used string instead, but we didn't. We are not going to change that now.
(If we get generalized type aliases, you can probably define your own typedef string = String;. I implore you not to, because it would not improve the readability of your code. Historically, the reason Java did not have a C-like #define functionality was explicitly because they did not want people writing in a myriad of private dialects that other people couldn't read).

In my opinion lower case types are primitives and capitalized types are not-primitives like classes. Ok I come from TypeScript. I'm new in Dart. The different capitalization of primitive types is not really intuitive and confusing. Bad user experience. It should be consistency. Why is String an expection or vise versa int, double, bool, etc? You wrote something about it that it was deliberately chosen to compromise on usability. A language must be consistent. Not ambiguous. This automatically fits to the "familiarity/user-expectation goal". It's weird to see that String is not something special type, or double, etc. Is this fact? Sorry if I didn't understand something. If you say what double and String are different type meanings - like primitives and non-primitives - than it's ok to the current state. But if not (both are primitives), then you really should change it. This only worsens the language or experience. At least for me. I find it a pity. That's my opinion on that. Especially the rejection of the members. ... No offence.

I think it's not a question about how and why. There is no understandable reason to have inconsistent capitalization of the primitive types.

The real reason Dart has those exceptions (int, double and bool) is because of trade-offs between usability, user expectation and consistency. Dart was designed as a pragmatic language. It values consistency, but not at any price. The familiarity/user-expectation goal was generally influenced by Java, JavaScript and C#, and it was considered better usability to make those types short, recognizable and easy to write.

But why not String too? It looks like a random pick. Maybe an interesting story?
"Hey, let us use lower case letters for the primitive types."
"Ok, done!"
(years later) "D'oh, we forgot the String type."
¯\_(ツ)_/¯
Passed through reviewer, etc. Sorry it sounds amateurish. No offense. I just can't understand it.
I'm quite new to Dart, but sadly that's a point that diminishes my experience with it. Goes to the cons list. It not yet a KO, but I think that's a pity. So far I like Flutter and Dart (more or less).
This could be a breaking change for the next major version.
Maybe "smooth" breaking by alias and deprecated marked.

just do what c# did, and allow both upper and lower case versions of string ... (and anyone who actually used "string" for a variable name will have to change, but that's ok because they would deserve it"
fun response to "what is the diff between string and String in C#"
"String uses a few more pixels than string. So, in a dark room, it will cast a bit more light, if your code is going to be read with light-on-dark fonts. Deciding on which to use can be tricky - it depends on the price of lighting pixels, and whether your readership wants to cast more light or less. But c# gives you the choice, which is why it is all-around the best language."
and later "saves on toner too" :)
https://stackoverflow.com/a/439372

If/when we get type aliases (https://github.com/dart-lang/language/issues/65), I'm sure a typedef string = String; will be on the short list of requests. After typedef Any = Object?;.

The only thing I found annoying about Dart is why String is not string...but why??????????

The only thing I found annoying about Dart is why String is not string...but why??????????

@devhammed Honest answer: Because that's what it is in Java.
The original Dart design was deliberate in being "non surprising" to people coming from Java and JavaScript, and to some extent C#. If Java had had a string type, I'm sure Dart would have used lower-case too.
(And again: Dart does not have any "primitive types". Any argument based on making a distinction between primitive types and non-primitive types does not apply to Dart. Dart has lower-case int and double because Java does.)

@devhammed Honest answer: Because that's what it is in Java.
The original Dart design was deliberate in being "non surprising" to people coming from Java and JavaScript, and to some extent C#. If Java had had a string type, I'm sure Dart would have used lower-case too.
(And again: Dart does not have any "primitive types". Any argument based on making a distinction between primitive types and non-primitive types does not apply to Dart. Dart has lower-case int and double because Java does.)

Why comparing languages? It's not a good idea to compare Java with JavaScript. You should not force Java conventions into JavaScript and vice versa. ...
What was the goal? Why develop a new language? Do it better!
Yes, you can copy things from other languages. And if I get it right, the darts team went with Java-like things because the team is from Java. And we all know that Java-lovers don't accept other languages. They like to be among themselves and despise other developers who are not in the Java world. Just joking. 😄 But in my experience is also some truth to it. Anyway...
A new language should make things better and go its own way. Especially when it comes to this issue.
So many people want that too. Why fight against it? Think about the change. Don't worry, no hard cut required. For example: Provide string as alias for String and inform about the deprecation. Or vice versa as described here. (e.g. Double as alias for double and mark the old one as deprecated.) It think it's not a big deal.

Why comparing languages? It's not a good idea to compare Java with JavaScript. You should not force Java conventions into JavaScript and vice versa. ...
What was the goal? Why develop a new language? Do it better!
Yes, you can copy things from other languages. And if I get it right, the darts team went with Java-like things because the team is from Java. And we all know that Java-lovers don't accept other languages. They like to be among themselves and despise other developers who are not in the Java world. Just joking. 😄 But in my experience is also some truth to it. Anyway...
A new language should make things better and go its own way. Especially when it comes to this issue.
So many people want that too. Why fight against it? Think about the change. Don't worry, no hard cut required. For example: Provide string as alias for String and inform about the deprecation. Or vice versa as described here. (e.g. Double as alias for double and mark the old one as deprecated.) It think it's not a big deal.

For all types that are lowercase dart should optionally also allow upper-case so people who value consistency can use all capitalized types.

For all types that are lowercase dart should optionally also allow upper-case so people who value consistency can use all capitalized types.

Why this is close? :D This is such inconsistency, really brings confusion if someone logically approach to a concept, that in Dart every type is an Object. People who also have experience in other languages like for example Java at first glance they will assume that those types works in the same way (and the int is not an actual Object). You should allow to define integer in both way (int and Int) if not deprecate the int declaration

Forget about.
I thinks it is a reminder,that nothing in the world is perfect.
And there are things that will never change.
Dart has improved in such a way since 1.0 that I can forgive this one.
Em sex., 30 de jul. de 2021 às 16:37, tabks @.***>
escreveu:

Why this is close? :D This is such inconsistency, really brings confusion
if someone logically approach to a concept, that in Dart every type is an
Object. People who also have experience in other languages like for example
Java at first glance they will assume that those types works in the same
way (and the int is not an actual Object). You should allow to define
integer in both way (int and Int) if not deprecate the int declaration
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/dart-lang/sdk/issues/1410#issuecomment-890111847, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AHGYQ32ILBP7YNDJV3YQBVTT2L5QFANCNFSM4B6QQ4PQ
.

Is it possible to kindly fix this inconsistency in the next major version? May be allow both capital and small cases. It's a little bit weird.

could somebody please fork dart and add this? you will get my star :)

Type aliases were released in dart 2.13. So now you can use typedef string = String; or typedef Int = int;

Thank you, @Ec7i9se - just what I needed to know! Coming from Python and PHP, this seemed so weird... and overcomplicating things.


Failed to get dates for all remote commits

this is the error that i get while trying to build the versions! :)
"Failed to get dates for all remote commits"
=> Reading config from source/conf.py...
Running Sphinx v1.6.3
loading pickled environment... not yet created
Exception occurred:
File "/home/senaps/Projects/documents/testversion/env/lib/python2.7/site-packages/sphinxcontrib/versioning/sphinx_.py", line 60, in builder_inited
app.config.html_sidebars['**'] = StandaloneHTMLBuilder.default_sidebars + ['versions.html']
AttributeError: type object 'StandaloneHTMLBuilder' has no attribute 'default_sidebars'
The full traceback has been saved in /tmp/sphinx-err-0FisJh.log, if you want to report the issue to the developers.
Please also report this if it was a user error, so that a better error message can be provided next time.
A bug report can be filed in the tracker at https://github.com/sphinx-doc/sphinx/issues. Thanks!
Process Process-1:
Traceback (most recent call last):
File "/usr/lib64/python2.7/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib64/python2.7/multiprocessing/process.py", line 114, in run
self._target(*self._args, **self.kwargs)
File "/home/senaps/Projects/documents/testversion/env/lib/python2.7/site-packages/sphinxcontrib/versioning/sphinx.py", line 219, in _read_config
build(argv, config, Versions(list()), current_name, False)
File "/home/senaps/Projects/documents/testversion/env/lib/python2.7/site-packages/sphinxcontrib/versioning/sphinx.py", line 204, in _build
raise SphinxError
SphinxError
=> sphinx-build failed for branch/tag while reading config:
=> Unable to read file, continuing with only CLI args.
=> Gathering info about the remote git repository...
=> Getting list of all remote branches/tags...
Username for 'http://': maysam
Password for 'http://maysam@':
=> Found: feature master 1.0.0
=> Failed to get dates for all remote commits.
by the way, no log was generated in tmp/

I Have the same problem. This is the log:
# Sphinx version: 1.6.1
# Python version: 3.5.2 (CPython)
# Docutils version: 0.13.1 release
# Jinja2 version: 2.9.6
# Last messages:

# Loaded extensions:
Traceback (most recent call last):
  File "/home/monkey/.local/share/virtualenvs/docs-NpS6InWB/lib/python3.5/site-packages/sphinx/cmdline.py", line 305, in main
    opts.warningiserror, opts.tags, opts.verbosity, opts.jobs)
  File "/home/monkey/.local/share/virtualenvs/docs-NpS6InWB/lib/python3.5/site-packages/sphinx/application.py", line 233, in __init__
    self._init_builder()
  File "/home/monkey/.local/share/virtualenvs/docs-NpS6InWB/lib/python3.5/site-packages/sphinx/application.py", line 311, in _init_builder
    self.emit('builder-inited')
  File "/home/monkey/.local/share/virtualenvs/docs-NpS6InWB/lib/python3.5/site-packages/sphinx/application.py", line 488, in emit
    return self.events.emit(event, self, *args)
  File "/home/monkey/.local/share/virtualenvs/docs-NpS6InWB/lib/python3.5/site-packages/sphinx/events.py", line 79, in emit
    results.append(callback(*args))
  File "/home/monkey/.local/share/virtualenvs/docs-NpS6InWB/lib/python3.5/site-packages/sphinxcontrib/versioning/sphinx_.py", line 60, in builder_inited
    app.config.html_sidebars['**'] = StandaloneHTMLBuilder.default_sidebars + ['versions.html']
AttributeError: type object 'StandaloneHTMLBuilder' has no attribute 'default_sidebars'

+1

I resolved this issue for now by downgrading my sphinx to 1.5.6 from 1.6.3.

I could solve this problem by updating git to a 2.x version (was 1.8 before)

I could solve this problem by updating git to a 2.x version (was 1.8 before)

it really works.thank you.


Drush aliases broken in multi-app projects

When updating the drush aliases with platform drush-aliases and if the project contains more than one app, then the aliases are brokwn.
For the local one, the doc-root should point to [PROJECT]/www/[APP-NAME]
For the remote one, the remote-user should be [PROJECT-ID]-master--[APP-NAME]
Any idea how we could preserve those changes until the pltform CLI is fixing this?

I don't think there is a workaround right now beyond copying the generated alias file and giving it another name.
One thing I could work on is how to get the doc root correct for the local alias.
For the remote alias, it's not possible to adapt to multi-app until we have implemented an API so that the CLI knows enough about what apps are on what remote environment (see #159, #326).

Improved in v2.7.0, although I notice there may still be an issue with the local alias.

This is great, I've just tested this and can confirm that the remote-user is set correctly as well as the root directory for the local alias. Excellent work!
@pjcdawkins what issue with the local alias are you referring to?

Ah, well thanks for testing! To be honest I forgot that I'd implemented the local alias fix too... I've just checked and it's there.


Mocha 6.0.2 release breaks vscode debugger

Description
vscode's Mocha test debug target broke with the latest changes to bin/_mocha
Steps to Reproduce
try debugging a test file with the following configuration in vscode:
    {
      "type": "node",
      "request": "launch",
      "name": "Debug Current Test",
      "program": "${workspaceFolder}/node_modules/mocha/bin/_mocha",
      "args": [
        "-u",
        "tdd",
        "--timeout",
        "999999",
        "--colors",
        "${file}"
      ],
      "internalConsoleOptions": "openOnSessionStart"
    }

and you'll get errors like describe() is not defined or before() is not defined. Seems like mocha is not in the global scope when launched like this anymore. This works in pre 6.0.2 releases (e.g. 5.2).
Versions

mocha: 6.0.2
node: 11.10.0
OS: Ubuntu 18.04 64 bit
shell: ZSH

Delete -u and tdd flags in the args[], then it should work.

@juergba that worked! thanks. is this behavior documented somewhere? trying to figure out if there are other changes I need to be aware of.

Great! It's not really a change, describe() and before() are "BDD" style interface and you tried to debug with "TDD" style. "BDD" is default value, so you can omit -u bdd.
Have a look at our release notes, you should be fine, since we haven't changed our API.


Python 2.7.9 urlopen error [SSL: CERTIFICATE_VERIFY_FAILED]

I'm on OSX with the latest unstable nixpkgs release.
I'm getting the following error from a python script build with the default nixpkgs python (using buildPythonPackage):
    error: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:581)>

How should I proceed to debug the issue? I guess changing to Python 2.7.8 (without SSL verification) would be a temporary fix, but I don't know how to change the default python version and cannot find a working documentation for it.

How can I reproduce?

@domenkozar I'm sorry for not having a minimal case for this.
I have to following expression installed into my env to provide fullrelease cmd from zest.releaser, and I get the error when I try to publish a package to pypi. This used to work and I'm not sure what has changed. I had to fallback to system python based virtualenv to get work done :(
with import <nixpkgs> { };

let dependencies = rec {
  zest_releaser = buildPythonPackage {
    name = "zest.releaser-3.52";
    src = fetchurl {
      url = "https://pypi.python.org/packages/source/z/zest.releaser/zest.releaser-3.52.zip";
      md5 = "8740e9cc58d794135cc540d7b168f24e";
    };
  };
  zest_pocompile = buildPythonPackage {
    name = "zest.pocompile-1.4";
    src = fetchurl {
      url = "https://pypi.python.org/packages/source/z/zest.pocompile/zest.pocompile-1.4.zip";
      md5 = "a40b0384d2f5dceb374170d7afc8e559";
    };
    propagatedBuildInputs = [
      python27Packages."python-gettext-1.2"
    ];
  };
  gocept_zestreleaser_customupload = buildPythonPackage {
    name = "gocept.zestreleaser.customupload-1.4";
    src = fetchurl {
      url = "https://pypi.python.org/packages/source/g/gocept.zestreleaser.customupload/gocept.zestreleaser.customupload-1.4.zip";
      md5 = "13383cb434c4f4a4c4e77db2b2d8df8a";
    };
    propagatedBuildInputs = [
      zest_releaser
    ];
  };
};

in with dependencies; buildPythonPackage {
  name = "zest.releaser-3.52";
  src = fetchurl {
    url = "https://pypi.python.org/packages/source/z/zest.releaser/zest.releaser-3.52.zip";
    md5 = "8740e9cc58d794135cc540d7b168f24e";
  };
  propagatedBuildInputs = [
    zest_pocompile
    gocept_zestreleaser_customupload
  ];
}

@datakurre I'll take a look once I get a chance. Thanks!

@datakurre what happens if you do export SSL_CERT_FILE = ~/.nix-profile/etc/ca-bundle.crt

@domenkozar I have just run into this issue while packaging aurora. The error still persists with SSL_CERT_FILE set. I'm running latest nixos-unstable-small (15.06pre63074.6276eba) so I don't think this is platform specific.

How can I reproduce?

Sorry, false alarm. For me this error was triggered by cache issues. Once I solved those, aurora builds fine using Python 2.7.9.


Ensure "apt update" after adding/deleting sources

Ensure "apt update" is executed after adding/deleting sources so expected nodejs version is installed.

this is already the default in 1.8.x: https://github.com/puppetlabs/puppetlabs-apt/blob/1.8.x/manifests/source.pp#L48 and in 2.0.x https://github.com/puppetlabs/puppetlabs-apt/blob/master/manifests/setting.pp#L49-L53

True, my mistake. I had some problems with dependencies and I thought it was because of this. Clearly not.
Thanks anyway.


Ipynb is not shown in tab group

It will be nice if .ipynb file type could also be displayed in tab group

i second this.. i work with jupyter notebook files constantly. this extension is useless unless i can see ipynb files.


Numpy array default hasher

I cache a function which is called with large numpy arrays. There is an efficient way to hash them with https://github.com/ifduyue/python-xxhash
I think it's a common use case, so I can merge my method to the default hasher in this library.
The only problem is that hash collisions are possible, and the cache would then work incorrectly, but it's very rare, and also the existing functionality isn't broken. I can also add an option to not hash them but just convert to string with array.tobytes(), which prevents collisions but is only is suited for small arrays.
The same can be done for regular python lists (with xxhash or str(list)).
If you want, I can make a PR with this.

Sounds great! Please find a way to benchmark the improvement, though!
Thank you for suggest a PR!

How about converting the list to a tuple? #136

I think this is resolved with #183; see:
import numpy as np
import cachier

count = 0

@cachier.cachier()
def dummy_func(a, b=np.array([2])):
    global count
    count += 1
    return a + b

assert count == 0
dummy_func(np.array([1]))
dummy_func(np.array([1]), np.array([2]))
dummy_func(np.array([1]), b=np.array([2]))
dummy_func(a=np.array([1]), b=np.array([2]))
assert count == 1

I think we need to have to things to close this confidently:

A test covering this case.
A benchmark making sure performance, time-wise, for very large numpy array using the current solution are comparable to using hpython-xxhash.

Is 1 already in place?
If so, a contribution of 2 will enable me to feel comfortable with closing this issue.


Sort logs by _id

We should sort logs by _id (instead of $natural) because it allows mongo to use indexes.

@miskun @nevalla ping

Looks good!