text:
Error in strsplit(df[[.dalignments]], "|", TRUE, FALSE, TRUE)

🐛 Bug

I get this error when I use repLoad(/path/to/mixcrclonesoutputfile.txt).
Error in strsplit(df[[.dalignments]], "|", TRUE, FALSE, TRUE) :
non-character argument
I recheck the data and find the error arise when the input data have only one row like this (omiting other columns):
cloneId cloneCount      cloneFraction   targetSequences targetQualities allVHitsWithScore       allDHitsWithScore
0       17.0    1.0     TGTGCCAGTAGTATAGACGGTTCATCTGGAAACACCATATATTTT   FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
To Reproduce
Steps to reproduce the behavior:
1.repLoad(/path/to/mixcrclonesoutputfile.txt).
2.Error in strsplit(df[[.dalignments]], "|", TRUE, FALSE, TRUE) :
non-character argument
3.

Expected behavior

Additional context

Hi @chenyx47
Thank you! In the package we addressed the common case of repertoire files where all columns are available. Would you be willing to tell me more about the reasons to strip some columns from the output? It will greatly help us improve the package and/or provide recommendations how to deal with this type of bug.

Thanks for your reply, but you might misunderstand my question. The question is that when I use repLoad(/path/to/mixcrclonesoutputfile.txt), I met this error.
Error in strsplit(df[[.dalignments]], "|", TRUE, FALSE, TRUE) :
non-character argument
Thus, I recheck my input data, and find that only when the input data (Mixcr output format)  only one row does the error arise. And I paste an example here to inform you the format of the input data which would lead to the error. But becasue of the space I only paste part of the columns. Actually, all of the columns are available.
cloneId cloneCount cloneFraction targetSequences targetQualities allVHitsWithScore allDHitsWithScore
0 17.0 1.0 TGTGCCAGTAGTATAGACGGTTCATCTGGAAACACCATATATTTT FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
In contrast, neither the input data with more than one row nor with zero row would lead to the error.
More than one row:
cloneId cloneCount cloneFraction targetSequences targetQualities allVHitsWithScore allDHitsWithScore
0 17.0 1.0 TGTGCCAGTAGTATAGACGGTTCATCTGGAAACACCATATATTTT FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
0 17.0 1.0 TGTGCCAGTAGTATAGACGGTTCATCTGGAAACACCATATATTTT FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
Zero row:
cloneId cloneCount cloneFraction targetSequences targetQualities allVHitsWithScore allDHitsWithScore

Hi @chenyx47
Thank you! It's clear to me now, we will see what we can do. Is this a blocker for your research? It seems that having a file with only one row is unusual.

Hi @vadimnazarov
Thanks for your reply. Getting a file with only one row seems weird for me too. It might be attributed to that my analysis was based on bulk-RNAseq data. For now it is a blocker for my research, so I will appreciate it if you could offer me a solution.

Hi, @vadimnazarov
I am also working on bulk-RNA-seq data to find T cells from tumor samples. To me it is usual to have a mixcr result file that has only two lines. After load a sample with repLoad(), I got the same error message as the above researcher.
> input_path <- "C:\\Users\\Alice\\Desktop\\56.filtered.txt"
>             immune_data_list <- repLoad(input_path)

== Step 1/3: loading repertoire files... ==

Processing "<initial>" ...
  -- Parsing "C:\Users\Andy\Desktop\56.filtered.txt" -- mixcr
Error in strsplit(df[[.dalignments]], "|", TRUE, FALSE, TRUE) :
  non-character argument

Following is my two line productive cdr3aa result.
cloneId	cloneCount	cloneFraction	targetSequences	targetQualities	allVHitsWithScore	allDHitsWithScore	allJHitsWithScore	allCHitsWithScore	allVAlignments	allDAlignments	allJAlignments	allCAlignments	nSeqFR1	minQualFR1	nSeqCDR1	minQualCDR1	nSeqFR2	minQualFR2	nSeqCDR2	minQualCDR2	nSeqFR3	minQualFR3	nSeqCDR3	minQualCDR3	nSeqFR4	minQualFR4	aaSeqFR1	aaSeqCDR1	aaSeqFR2	aaSeqCDR2	aaSeqFR3	aaSeqCDR3	aaSeqFR4	refPoints
1	2	0.666666666666667	TGTGCTAGTGGTTGGGGGACCTACAATGAGCAGTTCTTC	JJJJJJJJJJJJJJJJJJAJJJJJJJJJJJJJJJJJJJJ	TRBV12-500(296)		TRBJ2-100(240)	TRBC200(925)	273|289|310|0|16|ST286G|66.0		22|42|70|19|39||100.0												TGTGCTAGTGGTTGGGGGACCTACAATGAGCAGTTCTTC	32								CASGWGTYNEQFF		:::::::::0:-1:16:::::19:-2:39:::
2	1	0.333333333333333	TGTGCCAGCAGTAGGACCCCGACCTACGAGCAGTACTTC	JJJJJFJJJFJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ	TRBV6-500(785)		TRBJ2-700(225)	TRBC200(295),TRBC1*00(267)	270|282|307|0|12||60.0		22|39|67|22|39||85.0	;											TGTGCCAGCAGTAGGACCCCGACCTACGAGCAGTACTTC	37								CASSRTPTYEQYF		:::::::::0:-5:12:::::22:-2:39:::

FYI I also have the same issue where I am running mixcr on bulk, paired end RNA-Seq from tumor samples and have a handful of repertoires with only one clone. This is with extremely hi depths reads btw.  immunarch repLoad poops out here for me too.

Did anyone find a solution for this?

Did anyone find a solution for this?

Hi, I am having the exact same issue as others in this thread. I have been digging in the code a little to see if I could find a root of the problem. The repLoad function decides which kind of file is being imported and uses different parsers for different data, so the error here is coming from the mixcr_parse() function.
The error happens when the parser determines it is a VDJ recombination type (for example TRBV clones) but mixcr has no info in the D alignment column for all clones.
    # check for VJ or VDJ recombination
    # VJ / VDJ / Undeterm
    recomb_type <- "Undeterm"
    if (sum(substr(head(df)[[.vgenes]], 1, 4) %in% c("TCRA", "TRAV", "TRGV", "IGKV", "IGLV"))) {
        recomb_type <- "VJ"
    } else if (sum(substr(head(df)[[.vgenes]], 1, 4) %in% c("TCRB", "TRBV", "TRDV", "IGHV"))) {
        recomb_type <- "VDJ"
    }

which is followed by a check for which recomb_type its parsing and in the case for "VDJ" is the offending strsplits
    if (recomb_type == "VJ") {
      df$VD.insertions <- -1
    } else if (recomb_type == "VDJ") {
      logic <- sapply(strsplit(df[[.dalignments]], "|", TRUE, FALSE, TRUE), length) >= 4 &
        sapply(strsplit(df[[.vend]], "|", TRUE, FALSE, TRUE), length) >= 5
      df$VD.insertions[logic] <-
        as.numeric(sapply(strsplit(df[[.dalignments]][logic], "|", TRUE, FALSE, TRUE), "[[", 4)) -
        as.numeric(sapply(strsplit(df[[.vend]][logic], "|", TRUE, FALSE, TRUE), "[[", 5)) - 1
    }

Note that a strsplit like this will split each element in the vector its been given, and it while it will accept some NA elements, it does complain if all elements are NA. Following is some R console testing I just did to confirm and also how to solve it by forcing a cast to character vector:
> strsplit(c("a|b|c|d|", NA), "|", TRUE, FALSE, TRUE)
[[1]]
[1] "a" "b" "c" "d"

[[2]]
[1] NA

> strsplit(c(NA, NA), "|", TRUE, FALSE, TRUE)
Error in strsplit(c(NA, NA), "|", TRUE, FALSE, TRUE) :
  non-character argument
> strsplit(as.character(c(NA, NA)), "|", TRUE, FALSE, TRUE)
[[1]]
[1] NA

[[2]]
[1] NA

> str(c(NA, NA))
 logi [1:2] NA NA
> str(c("TEST", NA))
 chr [1:2] "TEST" NA
> str(as.character(c(NA, NA)))
 chr [1:2] NA NA

Finally, note that there are other splits like these further in the parsing code which produce the exact same error of course. Since I don't know the code at all I cant say for sure that this is a good idea but it seems like the solution is to make sure R knows this is a character vector. Perhaps someone can have a look at this again?
Thanks!

having the same issue and would also appreciate it being addressed

Having this issue as well, it would be nice if a solution comes up!:) thank you!

Same issue ongoing for me... Files with one line are rejected

Same issue, files with one line (one clonotype) is rejected.

Hi! I was having the same problem and had a quick look at the code. The following block of code essentially determines the size of DJ insertion from D and J alignment encoding, and the one directly preceding it does the same for VD insertion.
    .dj.insertions <- "DJ.insertions"
    df$DJ.insertions <- -1
    if (recomb_type == "VJ") {
      df$DJ.insertions <- -1
    } else if (recomb_type == "VDJ") {
      logic <- sapply(strsplit(df[[.jstart]], "|", TRUE, FALSE, TRUE), length) >= 4 &
        sapply(strsplit(df[[.dalignments]], "|", TRUE, FALSE, TRUE), length) >= 5
      df$DJ.insertions[logic] <-
        as.numeric(sapply(strsplit(df[[.jstart]][logic], "|", TRUE, FALSE, TRUE), "[[", 4)) -
        as.numeric(sapply(strsplit(df[[.dalignments]][logic], "|", TRUE, FALSE, TRUE), "[[", 5)) - 1
    }

I suppose -1 means that the insertion is either undefined because of the VJ recombination type, or cannot be determined with high degree of confidence (which is the case when D alignment encoding is missing). So I slightly modified the logic in the above if statements so that the offending strsplits are not executed if all elements in df[[.dalignments]] are NA.
    if (recomb_type == "VJ" | all(is.na(df[[.dalignments]]))) {
      df$VD.insertions <- -1
    } else if (recomb_type == "VDJ") {
      logic <- sapply(strsplit(df[[.dalignments]], "|", TRUE, FALSE, TRUE), length) >= 4 &
        sapply(strsplit(df[[.vend]], "|", TRUE, FALSE, TRUE), length) >= 5
      df$VD.insertions[logic] <-
        as.numeric(sapply(strsplit(df[[.dalignments]][logic], "|", TRUE, FALSE, TRUE), "[[", 4)) -
        as.numeric(sapply(strsplit(df[[.vend]][logic], "|", TRUE, FALSE, TRUE), "[[", 5)) - 1
    }

    .dj.insertions <- "DJ.insertions"
    df$DJ.insertions <- -1
    if (recomb_type == "VJ" | all(is.na(df[[.dalignments]]))) {
      df$DJ.insertions <- -1
    } else if (recomb_type == "VDJ") {
      logic <- sapply(strsplit(df[[.jstart]], "|", TRUE, FALSE, TRUE), length) >= 4 &
        sapply(strsplit(df[[.dalignments]], "|", TRUE, FALSE, TRUE), length) >= 5
      df$DJ.insertions[logic] <-
        as.numeric(sapply(strsplit(df[[.jstart]][logic], "|", TRUE, FALSE, TRUE), "[[", 4)) -
        as.numeric(sapply(strsplit(df[[.dalignments]][logic], "|", TRUE, FALSE, TRUE), "[[", 5)) - 1
    }

I don't know if and how exactly this affects things downstream, but this worked for me and I guess would suffice for the time being. I forked the repo and modified it so if anyone is interested please check the repo here.

It would appear that you have fixed it! I downloaded your forked repo and it works great. Thanks so much and have a great day!

Hi, @plezar!
My name is Aleksandr Popov, I am a developer of the Immunarch package.
Thank you very much for this bugfix! I will merge it into dev branch in the upstream, so it will be included in the next release of Immunarch.
Good luck,
Aleksandr

@plezar's fork works for me (thanks!) but the current dev branch in this repo fails with:
Error in tbl_subset2(x, j = i, j_arg = substitute(i)) :
  object '.dalignments' not found

authors: AimSchina Alexander230 adrlar chenyx47 jdm204 mjrmason owenwilkins plezar samkleeman1 simonovae vadimnazarov whitehilltea

repo: immunomind/immunarch


text:
[CM-1016] feat: Commerce Widget Name + Soft Release

Hi👋, please prefix this PR's title with:

[ ] breaking-change: if you have introduced modification that necessitates immediate adjustments by this SDK's users to their applications, clients, or integrations to avert disruptions to existing features or functionalities.
[x] feat:, fix:, refactor:, docs:, or chore:.

Rename Checkout Widget -> Immutable Commerce Widget
Soft release Commerce Widget

We expect PR / Build, Lint & Test Example Widgets with latest SDK to fail here.

Do we still need the
build-lint-test-example-widgets-with-sdk:
    name: Build, Lint & Test Example Widgets with latest SDK

workflow step in the pr.yaml?

@zaidarain1
It's getting removed in this PR https://github.com/immutable/ts-immutable-sdk/pull/2346. Both of these PRs have conflicts which each other, I'll have to resolve once one is merged.

https://github.com/immutable/ts-immutable-sdk/actions/runs/11491972155/job/31985265313?pr=2349 failing as expected, need to commit to checkout-api-configs.

source: gharchive/pull-request

repo: immutable/ts-immutable-sdk

license_type: permissive

license_source: github-api


text:
Error: Comments Not Initialized

先上代码:
<% if (!index && post.comments && theme.gitment){ %>

    <link rel="stylesheet" href="https://imsun.github.io/gitment/style/default.css">

<% } %>

无法初始化是什么问题？哪里配错了？

https://imsun.net/
官网都无法访问，难怪报错
已经翻了一道墙，难道还有一道？？？

已解决
注册一个新的 OAuth Application。其他内容可以随意填写，但要确保填入正确的 callback URL（一般是评论页面对应的域名，如 https://imsun.net）。
这个callback域名是你自己博客的域名，不是直接用这个网址，之前官网打不开，被网上的教程坑了！！！

@hifor  我 Authorization callback URL 和 home url 配置点都撒 自己博客的域名，还撒报这个错。。。

我的也是这个错误，求解释？

source: gharchive/issue

authors: Vincentqyw fantasykai hifor

repo: imsun/gitment

license: mit

license_source: bigquery


text:
Class Goals

@githubstudent what is the other  goal can i add to?

I'll respond in this issue when I detect GitHub Pages has deployed your site.
Turning on GitHub Pages creates a deployment of your repository. I may take up to a minute to respond as I await the deployment.

repo: imtiazuet/github-slideshow

license: MIT


text:
Fixing issues with open source SCIM

According to spec filter should not be required - https://tools.ietf.org/html/rfc7644#section-3.4.1

Whoops meant to open this on the fork. You can ignore. Related to some testing around #12

repo: imulab/go-scim


text:
Document early development

We forked imxrt-dma forked from the imxrt-hal crate. When we finished the fork, we weren't able to maintain all of the development history in git.
Add additional documentation that links to notable DMA developments and discussions. These will probably refer to the HAL crate and repository.

We can refer to past DMA development with a PR search in imxrt-rs. The most relevant is imxrt-rs/imxrt-rs#49, which added DMA channels and the first Source & Destination peripheral traits. Changes since then should be captured in this repo's git history.

The PR linked above still remains the most-relevant intro to the DMA driver. The first imxrt-dma release has its own documentation that illustrates differences from the original imxrt-hal module.

repo: imxrt-rs/imxrt-dma


text:
Multi-line f-strings can help improving the readability of the SQL statements

You may want to consider using Python multi-line f-strings for separating and improving the readability of the SQL statements, in particular when they are complex.
For instance, this query could be written as:
query = f"""
  SELECT
      dref.coord_ra as ra,
      dref.coord_dec as dec,
      dref.ext_shapeHSM_HsmShapeRegauss_e1,
      dref.ext_shapeHSM_HsmShapeRegauss_e2,
      dref.objectId as id,
      dfrc.i_modelfit_CModel_instFlux

   FROM
      -- indicate which tables will be used and at the same time we define a short alias for each table
      dc2_object_run2_2i_dr6_wfd.dpdd_ref as dref,
      dc2_object_run2_2i_dr6_wfd.position as dpos,
      dc2_object_run2_2i_dr6_wfd.dpdd_forced as dfrc

   WHERE
      -- specify the ra, dec bounding box and we use the special SQL function: scisql_s2PtInBox
      -- It is mandatory to put this constraint right after the WHERE statement
      -- Using the special function is mandatory to use the special qserv optimization mechanism
      scisql_s2PtInBox(coord_ra, coord_dec, {ra_min}, {dec_min}, {ra_max}, {dec_max}) = 1

      -- join between the 3 tables on the objectId. It gurantees that each line extracted from the 3 tables
      -- corresponds to the same object
      AND dref.objectId = dpos.objectId
      AND dfrc.objectId = dpos.objectId

      -- add all the other selection cuts
      AND dpos.detect_isPrimary = 1
      AND dfrc.i_modelfit_CModel_flag = 0
      AND dfrc.i_modelfit_CModel_instFlux > 0
      AND dref.base_SdssCentroid_flag = 0

      -- we can have SQL math funcions in the query
      AND dref.base_Blendedness_abs < POWER(10, -0.375)
      AND dref.base_Blendedness_abs_instFlux IS NULL
      AND dref.base_ClassificationExtendedness_flag = 0
      AND dref. base_ClassificationExtendedness_value > 0
      AND ext_shapeHSM_HsmShapeRegauss_flag = 0

      -- crazy cut on the flux S/N for demonstration purpose to limit the number of returned lines.
      -- A more reasonable cut would be ~30 as in the commented line
      AND dfrc.i_modelfit_CModel_flag = 0
      AND dfrc.i_modelfit_CModel_instFlux > 0
      AND dfrc.i_modelfit_CModel_instFlux/dfrc.i_modelfit_CModel_instFluxErr > 1000
      AND dref.ext_shapeHSM_HsmShapeRegauss_resolution >= 0.3
      AND dref.ext_shapeHSM_HsmShapeRegauss_sigma <= 0.4

      -- another example of SQL math
      AND SQRT(POWER(dref.ext_shapeHSM_HsmShapeRegauss_e1, 2)+POWER(dref.ext_shapeHSM_HsmShapeRegauss_e2, 2)) < 2
"""
query += query_clean + ";"

The same technique can be used for other SQL statements (e.g. here) and in other *.py files.

I will implement this but unfortunately it seems that pd.read_sql_query() doesn't accept the comment lines

According to this StackOverflow question, the interpretation of the SQL comments depend on the system processing the query.
The MariaDB documentation states that comments can indeed start by --. You may want to try with block multi-line comments (i.e. /* blah blah blah */) to see if that works.
An alternative would be to pre-process the query to remove the lines starting by -- (via a regular expression) before passing the query to pandas.
I find your comments to the SQL statements are useful information to keep.

I also tried the /*  */  but it doesn't work either. I was also thinking of a pre-process step before submitting the query

Done. I am now using the python package sqlparse to format queries and filter comment out

Thanks @boutigny. I'm closing this issue.

authors: airnandez boutigny


text:
Update graphics on Getting Started

With the header change earlier this year, the images on https://www.inaturalist.org/pages/getting+started#web are out of date, mainly in that it directed people to the Add button from a dropdown rather than the green upload button.
I put in a screen shot as a temporary placeholder, but this is the graphic that needs to be updated for consistency on the page: http://static.inaturalist.org/wiki_page_attachments/450-original.png
(I know this is more a design issue, but didn't want to lose track of it.)

Done by loarie.

repo: inaturalist/inaturalist


text:
environment file conda to support handling

Also adapt the docuementation: provide some alternative options to fall back on.

This gave some other issues - currently the method that worked best is the old install, but forcing the correct niche version, eg pip install niche_vlaanderen==1.0a8

An environment file is now provided.
Manual installation without an environment is still possible:
conda install pandas rasterio rasterstats
pip install niche_vlaanderen==1.0a10

in case the environment does not work.

authors: johanvdw stijnvanhoey


text:
abi/Parse: allow for extra spaces in schema definitions

this adds a test for an ABI with spaces, which is failing before I added the line that removes spaces before parsing. let me know if there's a better way that you'd like to accomplish this!

brilliant! i adjusted the tests to reduce the number of things being tested within a case

authors: ryandotsmith worm-emoji

repo: indexsupply/x


text:
Setup Range for example: from 20 to 240

I need to setup the y-axis values from 20 to 240. Is it possible to do that? Thanks in advance!

+1 this functionality would be awesome to have. @Hermanya is there any way you could make this update? I've been looking through the code and would do it myself, but you're obviously much more familiar! If you can't, could you point me in the direction of where to start? I would really like this functionality. Thanks!

I'd look into sec/abstract-chart.js in the methods where labels are rendered. The code is in pretty poor condition, and I haven't actively worked on it for awhile. I've been busy with work and life and stuff 😅

I found some kind of trick to do that. I needed to start my chart from 0, so I added another data to datasets array.
{
    data: [0, 0, 0, 0, 0, 0, 0],
    color: () => 'rgba(0, 0, 0, 0)',
    propsForDots: {
        r: '0',
        fill: 'rgba(0, 0, 0, 0)',
    },
    strokeWidth: 0,
},

This code adds totally invisible data to chart and chart starts from zero. Maybe you can do something like that for 20 and 240.
Just add those to your dataset:
{
    data: [20, 20, 20, 20, 20, 20, 20],
    color: () => 'rgba(0, 0, 0, 0)',
    propsForDots: {
        r: '0',
        fill: 'rgba(0, 0, 0, 0)',
    },
    strokeWidth: 0,
},
{
    data: [240, 240, 240, 240, 240, 240, 240],
    color: () => 'rgba(0, 0, 0, 0)',
    propsForDots: {
        r: '0',
        fill: 'rgba(0, 0, 0, 0)',
    },
    strokeWidth: 0,
},

Hey,
I wanted this feature too, and looked at abstract_charts.js as suggested. I think I came up with a way around this. In my case, I will always be starting from zero in the graph, so I modified the following bit, at the top of the file. Additionally, I know that 600 will be the max y value. By having calcScaler return 600 the y axis starts at zero and ends at 600. Furthermore, by setting segments to 6 in the line chart component, the y axis increments by 100. Hope this helps. Not sure how stable this is, but it seems to work for my use case.
class AbstractChart extends Component {
calcScaler = data => {
if (this.props.fromZero) {
return 600;  // ORIGINAL CODE Math.max(...data, 0) - Math.min(...data, 0) || 1;
} else {
return Math.max(...data) - Math.min(...data) || 1;
}
};

There is a solution here given by @BishoyBishai

authors: Hermanya PhillipFraThailand jaysamligon7 lahmacun millro04 tj-boutorwick

repo: indiespirit/react-native-chart-kit


text:
Introduce the ASKEM Ontology

This PR does several things:

Introduces a custom ASKEM ontology

What's in it? ASKEM-O both collates useful terms from disparate existing ontologies as well as adds extra useful information on top of it such as "suggested unit" and "suggested data type"
Adds pydantic models and related tests to ensure the consistency of this ontology, which is curated in a JSON file within this repo (for now)

Adds the ASKEM ontology to the construction of the DKG
Improves DKG node schema:

allow for two parallel lists of property predicates and property values. For the ASKEM ontology, this allows for encoding the suggested units and suggested data types
add parallel list for xref types
add parallel list for synonym types

Adds a static site generation script with PyOBO for ASKEM-O (will run in a subsequent PR to reduce diff, since there's already a lot going on here)

To Do

[x] Test building locally
[x] Make sure there aren't any issues - the bioregistry doesn't contain askemo at the moment. Ideally, the MIRA Metaregistry would contain this but I'm not sure if we're ready to take the plunge of fully relying on the custom data, since a lot of vanilla Bioregistry usage exists throughout mira.

@bgyori the tests aren't passing because they are pointing to the existing deployment, which will have to get updated. However, they are passing on my new build locally.

repo: indralab/mira


text:
[Bug]: I set top n to 30 and threshold to 0 but only one rag result is put into system prompt.

Is there an existing issue for the same bug?

[X] I have checked the existing issues.

Branch name
main
Commit ID
~
Other environment information
No response
Actual behavior
xinference received following prompt(only one rag result, 30 is expected): prompt: '<|im_start|>system\n你是一个智能助手，请总结知识库的内容来回答问题回答必须来自于对知识库的概括、总结，不得有任何自由发挥当所有知识库内容都与问题无关时，你的回答必须包括“知识库中未找到您要的答案！”\n        以下是知识库：\n        \r具体来说，完成有效的买方筛选涉及以下几个问题：\ra)\t如何找买方；\rb)\t筛选标准是什么；\rc)\t筛选技巧有哪些；\rd)\t其他需要注意的问题。\r\r■\t谁会对你的企业感兴趣\r\r这是很多卖方企业家从决定出售就开始思考的问题。本质上这是一个关于买方收购动机的分析。与其盲无目的的兜售自己，不如首先静下心来，站在买方的角度想一想，对方感兴趣的原因可能包括哪些。得到了这些答案，潜在买方的名单自然也就浮出了水面。\r从产业整合的角度，典型的收购动机包括横向整合和纵向整合。除此之外，多元化并购和转型并购也是非常重要的交易动因，并且在中国市场，这两种类型的并购动机更加值得关注。\r\r1.\t横向并购\r\r横向并购通常发生在同行业的公司之间。追求规模经济 是实施横向并购的主要目标。买卖方公司合并之后，由于规模的扩大，可望为业务部门带来更强的销售定价权、更低的采购成本等，这些好处被称为“经营协同”。同时，对于财务、人事、行政等非业务部门，深度的整合也有可能实现单位管理成本的下降及管理效率的提升，这些收益被称为“管理协同”。除了效益的改善，横向并购经常还能实现减少竞争对手、加强行业垄断、实现地域扩张等战略意义。\r\n不过，市场也在不断变化和演进之中。中国资本市场才是个30岁的青年，并购市场则更加年轻。“士别三日，当刮目相待”，青春意味着无限的可能，也意味着迅速的变化。从国际经验上看，买方类型会逐渐呈现多元化，对卖方企业家来说便意味着更多的选择。我认为，除A股上市公司外，其他两种买方类型在若干年后也将成为重要的市场力量。他们是：国际买方和控股型并购基金。\r无论是有过外资投行经历的同仁，还是曾以买方身份参与过海外并购的上市公司朋友，应该都对“全球出售”并不陌生。\r\r■\t什么是全球出售\r\r全球出售就是将买方搜索和接触的范围从本国拓展至全球。目前，欧美成熟市场规模以上的待售企业都会�<|im_end|>\n<|im_start|>user\n什么是纵向并购<|im_end|>\n<|im_start|>assistant\n'
Expected behavior
No response
Steps to reproduce
using xinference llm and embedding, set knowledgebase and assistant following instroduction

Additional information
No response

btw, retrieval testing works correctly.

已经定位到，问题由message_fit_in的截断引起。我已经取消了model setting中的Max Tokens，但仍然截断了我的知识库信息，这可能是不合理的，建议改善。
def message_fit_in(msg, max_length=4000):
def count():
nonlocal msg
tks_cnts = []
for m in msg:
tks_cnts.append(
{"role": m["role"], "count": num_tokens_from_string(m["content"])})
total = 0
for m in tks_cnts:
total += m["count"]
return total
c = count()
if c < max_length:
    return c, msg

msg_ = [m for m in msg[:-1] if m["role"] == "system"]
msg_.append(msg[-1])
msg = msg_
c = count()
if c < max_length:
    return c, msg

ll = num_tokens_from_string(msg_[0]["content"])
l = num_tokens_from_string(msg_[-1]["content"])
if ll / (ll + l) > 0.8:
    m = msg_[0]["content"]
    m = encoder.decode(encoder.encode(m)[:max_length - l])
    msg[0]["content"] = m
    return max_length, msg

m = msg_[1]["content"]
m = encoder.decode(encoder.encode(m)[:max_length - l])
msg[1]["content"] = m
return max_length, msg

repo: infiniflow/ragflow


text:
Multiple  Retrieval + Generation phases in a single line

Is there an existing issue for the same feature request?

[X] I have checked the existing issues.

Is your feature request related to a problem?
No, but I would really like to chain multiple queries I think this would enhance the overall utility of the Graph function.

Describe the feature you'd like
Based on the context provided by the [[RagFlow Fix]], here's an explanation of "Multiple Retrieval + Generation phases in a single line":
Multiple Retrieval + Generation phases in a single line refers to a process where multiple cycles of retrieving information (retrieval phases) and generating new content or responses (generation phases) are executed sequentially within a single, continuous workflow. This means that the system does not stop after one cycle of retrieval and generation but rather continues through several iterations of this cycle, creating a more refined and comprehensive output.
For example, in a note-taking or knowledge management system like Smart Connect — Notes, this could involve retrieving existing notes, generating summaries or insights based on those notes, retrieving additional related notes or information, and further refining the output, all within a single, uninterrupted sequence.
Steps:

Initial Retrieval: Gather relevant existing notes or data.
Initial Generation: Create a first draft or initial response based on the retrieved data.
Secondary Retrieval: Identify gaps or additional information needed, and retrieve more notes or data.
Secondary Generation: Refine the initial response with the newly retrieved information.
Repeat as needed: Continue this cycle until the desired level of detail and completeness is achieved.

This approach enhances the quality and depth of the final output by leveraging iterative improvements through repeated retrieval and generation cycles.
Describe implementation you've considered
I really have not considered the implementation, other than the way state is maintained might have difficulty with nested recursion.
Documentation, adoption, use case
No response
Additional information
No response

Could you please paste the graph, and elaberate on a real scenario to help us understand that deeply?
Realy important, thanks!

authors: KevinHuSh rhudock


text:
Aborted connection 11 to db: 'rag_flow' user: 'root' host: '172.18.0.5' (Got an error reading communication packets) ragflow-server  | ./entrypoint.sh: line   Killed $PY api/ragflow_server.py

Is there an existing issue for the same bug?

[X] I have checked the existing issues.

Branch name
main
Commit ID
4.23 最新
Other environment information
No response
Actual behavior
页面正常运行，也没有任何操作，
过一阵页面突然就报，必现。

查看 日志：
ragflow-mysql   | 2024-04-24T03:56:09.272031Z 11 [Note] Aborted connection 11 to db: 'rag_flow' user: 'root' host: '172.18.0.5' (Got an error reading communication packets)
ragflow-server  | ./entrypoint.sh: line 37:    28 Killed                  $PY api/ragflow_server.py
Expected behavior
No response
Steps to reproduce
N/A

Additional information
No response

It's been killed.
It seems the RAM is out of limitaion.

authors: KevinHuSh zhaofangtao


text:
[14.0] ISPN-14977 Log ProtoStream entities on reindexing operations

https://issues.redhat.com/browse/ISPN-14977
https://issues.redhat.com/browse/JDG-5994
Backport of #11044

Applied the last changes also here

Rebased

Thanks @fax4ever

Thank you @ryanemerson

repo: infinispan/infinispan


text:
ISPN-9574 Remove duplicated counter module from Hot Rod server

https://issues.jboss.org/browse/ISPN-9574

Integrated, thanks Gustavo!

authors: danberindei gustavonalle


text:
🛑 Client Portal is down

In 6fa3240, Client Portal (https://accounts.infinite8.co) was down:

HTTP code: 404
Response time: 177 ms

Resolved: Client Portal is back up in 1c917f9.


text:
this should work to pass options to the fragments through the call to #open.

solves #101 thanks to @jamonholmgren

sorry, no tests but I verified in my production code it is fine ( dont take my word for it! )

Let me know if you guys 100% need tests. I can try to add them. We are looking at adding tests our gem as well. Just low experience with that here.

We don't need tests ( :scream: )... thanks!

took the conditional out. lemme know if it works for you. thanks  @Jamon :D

Good work, thanks!

authors: jamonholmgren jsilverMDX

repo: infinitered/bluepotion


text:
Unable to create new project

What's going on?
Receiving "error Command "format" not found." when creating new project using npx ignite-cli new Donut

Steps to reproduce

npx ignite-cli new Donut

ignite doctor results:
System
  platform           darwin
  arch               x64
  cpu                8 cores      Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz
  directory          donut        /Users/chanjinghong/Development/donut

JavaScript (and globally-installed packages)
  node                        15.8.0       /Users/chanjinghong/.nvm/versions/node/v15.8.0/bin/node
  npm                         7.5.1        /Users/chanjinghong/.nvm/versions/node/v15.8.0/bin/npm
    chromedriver              88.0.0
    create-react-app          4.0.2
    create-react-native-app   3.5.3
    firebase-tools            9.5.0
    npm                       7.5.1
    sequelize-cli             6.2.0
    yarn                      1.22.10
  yarn                        1.22.10      /Users/chanjinghong/.nvm/versions/node/v15.8.0/bin/yarn
    create-eth-app            1.6.2
    create-next-app           9.5.0
    create-react-app          3.4.1
    eslint                    5.16.0
    react-devtools            3.6.1
    serve                     11.3.0

Ignite
  ignite-cli         6.2.0        /Users/chanjinghong/.npm/_npx/e31027f3785124a8/node_modules/.bin/ignite
  ignite src         build        /Users/chanjinghong/.npm/_npx/e31027f3785124a8/node_modules/ignite-cli/build

Android
  java               1.8.0_144    /usr/bin/java
  android home       -            /Users/chanjinghong/Library/Android/sdk

iOS
  xcode              12.4
  cocoapods          1.10.1       /usr/local/bin/pod

I've resolved the issue, please make sure you have the correct react-native-cli installed.
Remove incorrect react-native-cli
yarn global remove react-native-cli or npm uninstall -g react-native-cli
Install the correct one
yarn global add @react-native-community/cli or npm install -g @react-native-community/cli
I think this should be mentioned in the docs somewhere.

@cjinghong Would you mind adding it to the docs via PR?

had the issue, it works, thanks

I've resolved the issue, please make sure you have the correct react-native-cli installed.
Remove incorrect react-native-cli
yarn global remove react-native-cli or npm uninstall -g react-native-cli
Install the correct one
yarn global add @react-native-community/cli or npm install -g @react-native-community/cli
I think this should be mentioned in the docs somewhere.

authors: cjinghong jamesjara jamonholmgren

repo: infinitered/ignite


text:
yarn iOS fail on ignite-cli v7.10.9, node lts v16.15.0

What's going on?
Could not run sample project created with "npx ignite-cli new PizzaApp" command.
I just clean install back my mac to Big Sur, due to there is a need to use Xcode version 12.4, but after I reinstall everything (homebrew, cocoapod, node, etc.), issue occurs.
I can no longer even run a simple sample project with "yarn iOS" now.
From what I can see from the terminal description, seems to have something to do with "Flipper-Folly".
I spend an entire day trying different node version, and downgrade to ignite-cli v7.9.*, but issues still occur.

Steps to reproduce

Make sure using node version v16.15.0 (LTS) & ignite-cli v7.10.92.
Create the sample project with "npx ignite-cli new PizzaApp"
cd into the project, then run "yarn ios"

error screenshots:

npx ignite-cli doctor results:

I manage to overcome this issue by avoiding ignite-cli 7, and directly creating a new project with a stable version of ignite-cli 6 instead like this:
npx ignite-cli@6.12.2 new PizzaApp
I also have to make sure to remove any other version of ignite-cli from my mac, so that my mac will automatically only use ignite-cli 6.12.2.
npm uninstall ignite-cli -g
npm install ignite-cli@6.12.2 -g
I am not sure that ignite-cli 7 is unstable, or has terrible compatibility with Xcode 12.4.
But clearing my system of ignite-cli 7 seems to have solved this issue.

I'm experiencing what I believe is the same issue. I just reformatted my Macbook, so fresh setup via: https://reactnative.dev/docs/environment-setup
Using NVM for Node
Repro
npx ignite-cli new test cd ./test npm run ios
Last lines of build output:
The following build commands failed: 	CompileSwift normal x86_64 (in target 'ExpoLinearGradient' from project 'Pods') 	CompileSwiftSources normal x86_64 com.apple.xcode.tools.swift.compiler (in target 'ExpoLinearGradient' from project 'Pods') (2 failures)
npx ignite-cli doctor
`
System
platform           darwin
arch               x64
cpu                12 cores     Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz
directory          test         /Users/conor/work/dev/testing/test
JavaScript (and globally-installed packages)
node               16.15.0      /Users/conor/.nvm/versions/node/v16.15.0/bin/node
npm                8.5.5        /Users/conor/.nvm/versions/node/v16.15.0/bin/npm
corepack         0.10.0
npm              8.5.5
yarn               -            not installed
pnpm               -            not installed
Ignite
ignite-cli         7.10.9       /Users/conor/.npm/_npx/e31027f3785124a8/node_modules/.bin/ignite
ignite src         build        /Users/conor/.npm/_npx/e31027f3785124a8/node_modules/ignite-cli/build
Android
java               11.0.15      /usr/bin/java
android home       -            undefined
iOS
xcode              13.3.1
cocoapods          1.11.3       /usr/local/bin/pod
`

So, I was able to get a fresh build running on ignite-cli@7.10.2
npx ignite-cli@7.10.2 new test10.2
7.10.3 npm reported a breaking issue, and bails
7.10.4-9 all result in the same error above when building

Can confirm It's not workig for me to run on windows (Android) and M1 (IOS) in version 7.10.9, but It works on ignite-cli 7.10.2.
Different error but also related with Expo modules (linearGradient)
Opening a new issue because its not the exact same error https://github.com/infinitered/ignite/issues/1948

I will give this a try later.
My tests were done on an Intel Macbook. And similar errors for Android on Mac and Windows with ExpoLinearGradient.

@myfoostrong @HidePoSy @nesjett Have you been able to check out the latest version of Ignite 7.14.2 and see if this is still an issue for you?

Closing this issue due to stale activity.
Also, v8 has been released! So please try the new version and feel free to open another issue should you still be experiencing trouble.

authors: HidePoSy frankcalise myfoostrong nesjett


text:
Beta 11

Closes #1061

Closing in favor of #1068

authors: kelseiv sanderson


text:
Cloud v2 removal/ updates to sign up page (5720)

Closes #
Describe your proposed changes here.

removed start for free section.

Made note about 3.0 version use only

Added other deployment options

[x] Signed the InfluxData CLA
(if necessary)

[ ] Rebased/mergeable

Just a tip: use #5720 to link the issue to your PR--e.g. in your commit message, you can do (closes #5720).

authors: MeelahMe jstirnaman


text:
[Kapacitor] How to doc

Start a how-to document.
Some ideas:

Automate successive queries with Kapacitor (https://www.influxdata.com/tldr-influxdb-tech-tips-june-30-2016/)
Compare data by changing timestamps (https://www.influxdata.com/tldr-influxdb-tech-tips-june-9-2016/)
Issues with using multiple-level filters in a TICK-script (https://www.influxdata.com/tldr-influxdb-tech-tips-may-19-2016/)
When to stream and when to batch (https://www.influxdata.com/tldr-influxdb-tech-tips-may-26-2016/)

Also check out the discussions in Google Groups.

How to use alert templates and available vars within the templates. Or possibly a more step by step walk through of the features of the alert node.

Batch vs. Stream: https://community.influxdata.com/t/batch-versus-stream-processing-combine/792

authors: nathanielc rkuchan


text:
feat: add logic for reading manifest from bolt file

Part of #173
This adds the minimal logic needed to open up a boltdb file downloaded from InfluxDB v2.0.x, extract the information relevant to backup/restore, and convert that info into a new-style manifest. It's not used by the backup command yet, but the included unit test shows it in action.

Looks like Windows CI is running into etcd-io/bbolt#252...

repo: influxdata/influx-cli


text:
None type exception when setting UDP Port via Ansible

InfluxDB version: 1.3.2
InfluxDB-python version: 5.3.0
Python version: 2.7.5
Operating system version: Centos 7.6

The 5.3.0 release appears to no longer be compatible with Ansible when leveraging default ports for influxdb.  The same playbooks have been running fine on the 5.2.3 release.
Traceback (most recent call last):
  File "<stdin>", line 102, in <module>
  File "<stdin>", line 94, in _ansiballz_main
  File "<stdin>", line 40, in invoke_module
  File "/usr/lib64/python2.7/runpy.py", line 176, in run_module
    fname, loader, pkg_name)
  File "/usr/lib64/python2.7/runpy.py", line 82, in _run_module_code
    mod_name, mod_fname, mod_loader, pkg_name)
  File "/usr/lib64/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/tmp/ansible_influxdb_database_payload_lJyiY4/ansible_influxdb_database_payload.zip/ansible/modules/database/influxdb/influxdb_database.py", line 143, in <module>
  File "/tmp/ansible_influxdb_database_payload_lJyiY4/ansible_influxdb_database_payload.zip/ansible/modules/database/influxdb/influxdb_database.py", line 125, in main
  File "/tmp/ansible_influxdb_database_payload_lJyiY4/ansible_influxdb_database_payload.zip/ansible/module_utils/influxdb.py", line 85, in connect_to_influxdb
  File "/usr/lib/python2.7/site-packages/influxdb/client.py", line 118, in __init__
    self.__udp_port = int(udp_port)
TypeError: int() argument must be a string or a number, not 'NoneType'

It appears to be a result of #815

The default value for udp_port is set to 4444, an int. This should not break anything if you're not choosing to set it.

I believe it's being explicitly set to None, but I'm not 100% sure

Rolling back to 5.2.3 did fix the issue too btw.

The flip back to v5.2.3 will "work" because there isn't any type-set of this. The parameter expects an int value but will not be used unless the use_udp boolean parameter is set. Can you please update your ansible script to avoid setting udp_port to None?

repo: influxdata/influxdb-python


text:
Fix newline in tag value cause partial commit

When a tag value contains newline(\n), the request sent to db would be splitted into two parts and the first part would fail to write to db but the second would be succeed. The reason is that before sending we do serialization(make_lines) the _escape_tag method in line_protocol.py won't handle it well, we need somehow more specific on newline instead of only handling escape character ()
There have been an issue raised before #632

@aviau I think this PR is worth merging.

Alright, LGTM.

Great, thank you @aviau !

authors: aviau lovasoa syhan


text:
1.x to 2.x migration tooling fails trying to write a new .tsm with existing filename

as per requested by @e-dard:
recurisive listing of to be migrated influxdb/data folder:
https://gist.github.com/peterpeerdeman/6e2af3f8e105ffccc181d228fb65dfc6
hello here! I'm trying my very best to migrate my 1.7.10 data to 2.0.0-beta10. both servers are not running, i've got the /root/.influxdb and /root/.influxdbv2 folders in place containing the data, but everytime I run the influxd migrate command I get an error that a certain .tsm already exists. I've double checked, the "existing" .tsm file is created earlier during the migration. This happens both when migrating all databases, as well as when migrating just one database.
@peterpeerdeman hey, could you file this as an issue and include a recursive file listing of /root/.influxdb/data? We only need to see the names of the TSM files in the various directories. This is probably a defect in the migration tooling. I expect that I didn't consider something and you are tickling that bug.
Originally posted by @e-dard in https://github.com/influxdata/influxdb/pull/17016#issuecomment-632223840
Steps to reproduce:
List the minimal actions needed to reproduce the behavior.
# influxd migrate --org-id 05b9f8dd8e449000
2020-05-21T16:41:26.842572Z     info    Resources opened        {"log_id": "0Mv1cIDW000", "service": "kvstore-bolt", "path": "/root/.influxdbv2/influxd.bolt"}
Migrated /root/.influxdb/data/destiny/autogen/338/000000201-000000002.tsm --> /root/.influxdbv2/engine/data/000000000000201-000000002.tsm
Migrated shard /root/.influxdb/data/destiny/autogen/338 to bucket 0cfef329799cb5fd in 19.4215ms
Migrated /root/.influxdb/data/destiny/autogen/356/000000337-000000003.tsm --> /root/.influxdbv2/engine/data/000000000000338-000000003.tsm
Migrated shard /root/.influxdb/data/destiny/autogen/356 to bucket 0cfef329799cb5fd in 13.7684ms
Migrated /root/.influxdb/data/destiny/autogen/374/000000327-000000002.tsm --> /root/.influxdbv2/engine/data/000000000000329-000000002.tsm
Migrated shard /root/.influxdb/data/destiny/autogen/374 to bucket 0cfef329799cb5fd in 14.6298ms
Migrated /root/.influxdb/data/destiny/autogen/392/000000336-000000002.tsm --> /root/.influxdbv2/engine/data/000000000000339-000000002.tsm
Migrated shard /root/.influxdb/data/destiny/autogen/392 to bucket 0cfef329799cb5fd in 23.4419ms
Migrated /root/.influxdb/data/destiny/autogen/410/000000337-000000002.tsm --> /root/.influxdbv2/engine/data/000000000000341-000000002.tsm
Migrated shard /root/.influxdb/data/destiny/autogen/410 to bucket 0cfef329799cb5fd in 25.7042ms
Migrated /root/.influxdb/data/destiny/autogen/428/000000139-000000002.tsm --> /root/.influxdbv2/engine/data/000000000000144-000000002.tsm
Migrated shard /root/.influxdb/data/destiny/autogen/428 to bucket 0cfef329799cb5fd in 14.0162ms
Migrated /root/.influxdb/data/doorbell/autogen/240/000000003-000000002.tsm --> /root/.influxdbv2/engine/data/000000000000009-000000002.tsm
Migrated shard /root/.influxdb/data/doorbell/autogen/240 to bucket e5683265f2e44abd in 6.1435ms
Migrated /root/.influxdb/data/doorbell/autogen/251/000000003-000000002.tsm --> /root/.influxdbv2/engine/data/000000000000010-000000002.tsm
Migrated shard /root/.influxdb/data/doorbell/autogen/251 to bucket e5683265f2e44abd in 6.8534ms
Migrated /root/.influxdb/data/doorbell/autogen/268/000000005-000000002.tsm --> /root/.influxdbv2/engine/data/000000000000013-000000002.tsm
Migrated shard /root/.influxdb/data/doorbell/autogen/268 to bucket e5683265f2e44abd in 24.9904ms
Migrated /root/.influxdb/data/doorbell/autogen/285/000000002-000000002.tsm --> /root/.influxdbv2/engine/data/000000000000011-000000002.tsm
Migrated shard /root/.influxdb/data/doorbell/autogen/285 to bucket e5683265f2e44abd in 6.3018ms
Migrated /root/.influxdb/data/fitbit/autogen/7/000000001-000000001.tsm --> /root/.influxdbv2/engine/data/000000000000011-000000001.tsm
Migrated shard /root/.influxdb/data/fitbit/autogen/7 to bucket 36a8dd4f954efd8a in 7.596ms
Migrated /root/.influxdb/data/fitbit/autogen/9/000000003-000000002.tsm --> /root/.influxdbv2/engine/data/000000000000014-000000002.tsm
Migrated shard /root/.influxdb/data/fitbit/autogen/9 to bucket 36a8dd4f954efd8a in 24.3645ms
Migrated /root/.influxdb/data/fitbit/autogen/23/000000005-000000002.tsm --> /root/.influxdbv2/engine/data/000000000000017-000000002.tsm
Migrated shard /root/.influxdb/data/fitbit/autogen/23 to bucket 36a8dd4f954efd8a in 28.7097ms
Migrated /root/.influxdb/data/fitbit/autogen/224/000000006-000000002.tsm --> /root/.influxdbv2/engine/data/000000000000019-000000002.tsm
Migrated shard /root/.influxdb/data/fitbit/autogen/224 to bucket 36a8dd4f954efd8a in 24.5256ms
Migrated /root/.influxdb/data/fitbit/autogen/242/000000015-000000002.tsm --> /root/.influxdbv2/engine/data/000000000000029-000000002.tsm
Migrated shard /root/.influxdb/data/fitbit/autogen/242 to bucket 36a8dd4f954efd8a in 27.7407ms
Migrated /root/.influxdb/data/fitbit/autogen/259/000000017-000000002.tsm --> /root/.influxdbv2/engine/data/000000000000032-000000002.tsm
Migrated shard /root/.influxdb/data/fitbit/autogen/259 to bucket 36a8dd4f954efd8a in 25.9605ms
Migrated /root/.influxdb/data/fitbit/autogen/276/000000007-000000002.tsm --> /root/.influxdbv2/engine/data/000000000000023-000000002.tsm
Migrated shard /root/.influxdb/data/fitbit/autogen/276 to bucket 36a8dd4f954efd8a in 22.9052ms
Error: error processing TSM file "/root/.influxdb/data/fitbit/autogen/293/000000002-000000002.tsm": operation not allowed, file "/root/.influxdbv2/engine/data/000000000000019-000000002.tsm" exists

Expected behavior:
succesful migration
Actual behavior:
error as seen above
Environment info:

System info: Linux 4.19.76-linuxkit x86_6
InfluxDB version: InfluxDB 2.0.0-beta.10 (git: d00706dea8) build_date: 2020-05-21T17:04:04Z

I am seeing this issue as well:
# influxd migrate --org-id 05e30685d3f87000 --influxdb-1x-path=old --influxdb-2x-path=. --db weather
2020-06-22T13:27:24.616142Z	info	Resources opened	{"log_id": "0NZ3Ehn0000", "service": "kvstore-bolt", "path": "influxd.bolt"}
Migrated old/data/weather/autogen/8697/000000008-000000002.tsm --> engine/data/000000000000050-000000002.tsm
Migrated shard old/data/weather/autogen/8697 to bucket 4cdcc2a6976f1141 in 3.063511ms
Migrated old/data/weather/autogen/8888/000000009-000000002.tsm --> engine/data/000000000000052-000000002.tsm
Migrated shard old/data/weather/autogen/8888 to bucket 4cdcc2a6976f1141 in 2.460435ms
Migrated old/data/weather/autogen/8948/000000009-000000002.tsm --> engine/data/000000000000053-000000002.tsm
Migrated shard old/data/weather/autogen/8948 to bucket 4cdcc2a6976f1141 in 2.524194ms
Migrated old/data/weather/autogen/8971/000000010-000000002.tsm --> engine/data/000000000000055-000000002.tsm
Migrated shard old/data/weather/autogen/8971 to bucket 4cdcc2a6976f1141 in 3.107012ms
Migrated old/data/weather/autogen/8994/000000008-000000002.tsm --> engine/data/000000000000054-000000002.tsm
Migrated shard old/data/weather/autogen/8994 to bucket 4cdcc2a6976f1141 in 1.207404ms
Migrated old/data/weather/autogen/9017/000000012-000000002.tsm --> engine/data/000000000000059-000000002.tsm
Migrated shard old/data/weather/autogen/9017 to bucket 4cdcc2a6976f1141 in 1.176948ms
Migrated old/data/weather/autogen/9040/000000014-000000002.tsm --> engine/data/000000000000062-000000002.tsm
Migrated shard old/data/weather/autogen/9040 to bucket 4cdcc2a6976f1141 in 1.449487ms
Error: error processing TSM file "old/data/weather/autogen/9063/000000010-000000002.tsm": operation not allowed, file "engine/data/000000000000059-000000002.tsm" exists

Here is a gist with the tree output for the directory: https://gist.github.com/thequailman/0667708b9ed9e5fedf2596cf0b886427

target dir looks like:
[~] # ls -l /share/virt_station/container-station-data/data/influxdb2.0/data/engine/data/
total 264280
-rw-r--r-- 1 admin administrators  5158957 2020-07-14 23:50 000000000000002-000000002.tsm
-rw-r--r-- 1 admin administrators 11855487 2020-07-14 23:50 000000000000005-000000008.tsm
-rw-r--r-- 1 admin administrators 16530508 2020-07-14 23:50 000000000000006-000000015.tsm
-rw-r--r-- 1 admin administrators 22851989 2020-07-14 23:50 000000000000008-000000009.tsm
-rw-r--r-- 1 admin administrators 10891260 2020-07-14 23:50 000000000000012-000000002.tsm
-rw-r--r-- 1 admin administrators 14383449 2020-07-14 23:50 000000000000013-000000002.tsm
-rw-r--r-- 1 admin administrators 17407582 2020-07-14 23:50 000000000000020-000000002.tsm
-rw-r--r-- 1 admin administrators 21770890 2020-07-14 23:50 000000000000021-000000002.tsm
-rw-r--r-- 1 admin administrators 75919479 2020-07-14 23:50 000000000000021-000000002.tsm.migrate
-rw-r--r-- 1 admin administrators  9028065 2020-07-14 23:50 000000000000023-000000002.tsm
-rw-r--r-- 1 admin administrators 64800481 2020-07-14 23:50 000000000000028-000000002.tsm

authors: lblabr peterpeerdeman thequailman

repo: influxdata/influxdb


text:
The influxdb_line_protocol crate links are outdated

Hi,
The influxdb_line_protocol crate links are outdated. They still link to the old repository.
https://github.com/influxdata/influxdb/blob/acfef87659c9a8c4c49e4628264369569e04cad1/influxdb_line_protocol/Cargo.toml#L9-L10

I'm currently using influxdb_line_protocol but just noticed that the GitHub link on crates.io is 404. Has this been moved somewhere else and it just hasn't been updated, or has it been abandoned?
Another reason I'm thinking influxdb_line_protocol has been abandoned is that influxdata's own crate influxdb_line_protocol isn't even listed at https://docs.influxdata.com/influxdb/v2/api-guide/client-libraries/

influxdb_iox was made private as this is our main commercial offering of 3.0. We do however use that crate for the OSS version of 3.0 which is available here. This is a mirror of certain crates used in IOx that we share core functionality with between the products. It's not abandoned. If you need it you can use it as a git dep in cargo for now.

Alright. It would be nice to update the public crate but at least it's still open.

authors: alfiedotwtf fungiboletus mgattozzi


text:
Remove old logging line

Required for all non-trivial PRs

[ ] Rebased/mergable
[ ] Tests pass

Fix the build.

Closing in favour of #8430.


text:
tsdb/WAL: Better respect for WAL disabled

While toying with the TSM Engine, I notice that WAL files are created when WAL is disabled. Turns out that the WAL object is instantiated, but only checked for sometimes, when configured to be disabled.
This change removes instantiation and all use of Engine.WAL when the option is disabled.

During a run of megacheck the following issues were discovered:

authors: hercules-influx jacobmarble


text:
fix stateDuration & stateCount adding fields to wrong point in batch

This fixes the map write race condition reported in https://github.com/influxdata/kapacitor/issues/1369#issuecomment-301778741 as well as the point sharing issue reported in #1379, but only for stateDuration & stateCount. If this is the solution we want to go with (copying the batch), I can implement on the other nodes.
Required for all non-trivial PRs

[X] Rebased/mergable
[X] Tests pass
[ ] CHANGELOG.md updated
[X] Sign CLA (if not already signed)

@phemmer Thanks, I'll merge and add a CHANGELOG entry.

authors: nathanielc phemmer

repo: influxdata/kapacitor


text:
Incorrect calculation of Microseconds timestamp

Right now, the conversion from influxdb::query::Timestamp::Microseconds to chrono::Datetime is incorrect:
            Timestamp::Microseconds(mis) => {
                let nanos = mis / 10000;
                Utc.timestamp_nanos(nanos.try_into().unwrap())
            }

In this case, nanos should be calculated by multiplying mis by MICROS_PER_NANO, which equals 1000.
p.s. If I understand correctly, this bug affects the correctness of timestamps stored in the influxdb and, therefore, if one uses microseconds precision to store the data - the time of the data in the database would be incorrect.

Interesting. Looks like this has been wrong since version 0.0.6, introduced in #41

repo: influxdb-rs/influxdb-rust


text:
[0.9.1] (regression) simple regex query fails with cryptic error

SELECT * FROM /.*/ LIMIT 1, which appears in our 0.9 docs three times, now fails with an error about fields in a GROUP BY.
> SELECT * FROM /.*/ LIMIT 1
ERR: can not use field in group by clause: host

This worked in 0.9.0, doesn't work in 0.9.1.

@beckettsean what if I need to get grouped results from all series alltogether? Example:
SELECT MAX(value) AS max FROM /^response_times.service_1.*/ WHERE time > now() - 1d GROUP BY time(6h)

Result:
response_times.service_1.pl.warsaw.dc1
time  max
2015-07-19T00:00:00Z  942
2015-07-20T00:00:00Z  949
2015-07-21T00:00:00Z  888
response_times.service_1.us.new-york.dc3
time  max
2015-07-19T00:00:00Z  993
2015-07-20T00:00:00Z  873
2015-07-21T00:00:00Z  917

And I would like to get results grouped just as a single serie.

Similar issue
> insert thing,"query"=yay value=1
> select * from thing
ERR: can not use field in GROUP BY clause: query

authors: beckettsean jacekgrzybowski mjdesa

repo: influxdb/influxdb


text:
InfluxDB - Admin Interface advertising InfluxDB v0.9.3

I have a nightly 0.9.5 installed. Is this by design or just a mere oversight.
Also, Admin Interface is using Bootstrap v3.3.4 while Bootstrap v3.3.5 is already available since June.

It's an oversight. The version string will be updated by PR https://github.com/influxdb/influxdb/pull/4776.
The bootstrap version still needs to be updated so leaving this issue open for now.

Would you be ok with a pull request. I can help with the Admin UI. There are a few things that can be improved.

Absolutely. See your name in the CHANGELOG!
Larger changes should be discussed on a ticket first.
On Friday, November 13, 2015, Ionel Roiban notifications@github.com wrote:

Would you be ok with a pull request. I can help with the Admin UI. There
are a few things that can be improved.
—
Reply to this email directly or view it on GitHub
https://github.com/influxdb/influxdb/issues/4780#issuecomment-156451434.

authors: gunnaraasen otoolep skynet


text:
CREATE DATABASE [IF NOT EXISTS] ...

Add support for optional IF NOT EXISTS to CREATE DATABASE command. This is generally useful to ensure a database exists with a default retention policy, without having to bother with error checking.
It is also specifically useful for the upcoming monitoring functionality.
This was also requested in https://github.com/influxdb/influxdb/issues/2458 and follows the pattern of mysql and sqlite.

@dgnorton @beckettsean

works for me. I think we need to add NOT to https://github.com/influxdb/influxdb/blob/master/influxql/INFLUXQL.md#keywords and to https://github.com/influxdb/influxdb.com/blob/master/content/docs/v0.9/query_language/spec.md#keywords, which is basically a copy of the former in the Docs repo.
Anyone have a better way to keep those two in sync than just manually copying?

@beckettsean -- I don' thave a better way, but I will update INFLUXQL.md as part of this PR.

@beckettsean -- we also need to update the documents around CREATE DATABASE too, of course.

Branch is green on Circle, as can be seen here https://circleci.com/gh/influxdb/influxdb/tree/if_not_exists
Final commit was docs only, so CI was skipped.

Added another test, so Circle should kick off again.

@otoolep  one minor thing but otherwise +1
@beckettsean yes, keeping those two in sync is something that needs to be automated.  I'll look into it.

Thanks for the pointer @dgnorton

authors: beckettsean dgnorton otoolep


text:
PTEUDO-1562 rewrite migration logic of controller

- fix grant/revoke superuser
- support gcp alloydb roles
- pass cloud into dbclient pkg calls
- ignore sql revoke errors on non-cloud dbs
- separate kubectl client for finding cloud based master credentials
- push sql updatepassword when credentials are denied
- always set status when existing reconcileNewDB
- persist source user creds to secret at end of newdb for migration
- bind psql containers to host IP so they can talk to each other
- refactor ways credentials are divined from cluster
- move mock sql roles into testdb runner
- systemfunctions cleanup logic and logs
- ignore errors during dbproxy shutdown

Running this to see how we're doing on reliable helm tests
count=0; while make undeploy deploy helm-test; do ((count+=1)); done; echo "Command failed after $count successful executions"

repo: infobloxopen/db-controller


text:
Handle numeric modifiers (nummod) in postprocess

Remove nummod that directly modifies definition, and merge nummod
with its parent of parent is not a definition head.

Don't review yet. Will look more into this.

Current coverage is 95.65%

Merging #33 into master will increase coverage by +1.40% as of dd1b747

@@            master     #33   diff @@
======================================
  Files           12      12
  Stmts          348     391    +43
  Branches         0       0
  Methods          0       0
======================================
+ Hit            328     374    +46
  Partial          0       0
+ Missed          20      17     -3

Review entire Coverage Diff as of dd1b747

Powered by Codecov. Updated on successful CI builds.

lgtm :ship:

authors: alvaromorales codecov-io moldot

repo: infolab-csail/whoami


text:
Are model values supported?

Description
It is a question and not a bug report. I cannot figure out how to use model values in the specification.
Apalache manual seems to require that constant assigned in CFG file, must be of Str type:
\* CFG file fragment
CONSTANT C = C

\* TLA file fragment

CONSTANT
   \* @type: Str;
    C

But if I do it this way, I cannot use it in expressions of other types:
\* @type: Seq(Bool);
C_1 == <<C>>

gives error:
Need annotation. Found 2 matching operator signatures ((i) => <<i>>) or ((i) => Seq(i)) for argument Str

I guess this error means "Bool does not match Str"
The most valuable property of a model value is that it has meaning "value different from any other value". For integers (or strings)
one can always choose some specific value, but for booleans it is not clear how to choose such a value.

The most valuable property of a model value is that it has meaning "value different from any other value". For integers (or strings) one can always choose some specific value, but for booleans it is not clear how to choose such a value.

We don't support model values in the sense that TLC does. In particular, you can't invent an undetermined constant of any interpreted type (e.g. Bool), though you can generate arbitrary values of that type via generators. What we do have are constants of uninterpreted types. The way you use them is pretty simple, you just have to annotate the constant with an uninterpreted type
CONSTANT
   \* @type: CTYPE;
    C

then you can do something like
CInit == C = "v1_OF_CTYPE"

We also had a HOWTO on that, though it is not easy to find: https://apalache.informal.systems/docs/HOWTOs/uninterpretedTypes.html

@Kukovec , @konnov Thanks for the explanation, it is clear now.

authors: Kukovec craft095 konnov

repo: informalsystems/apalache


text:
Type concretization for nullary expressions

The PR #1878 has surfaced a type concretization bug that was somehow avoiding the post type checker. Consider the following specification:
-------------------------- MODULE TestPolyNullary ------------------------------
EXTENDS FiniteSets

VARIABLES
    \* @type: Set(Int);
    set

Init ==
    LET \* @type: () => Set(a);
        Empty == {}
    IN
    set = Empty

Next == UNCHANGED set
================================================================================

When we run Apalache against #1878, the following bug occurs:
unexpected expression: Expected a non-polymorphic type, found: (() => Set(c))

This caused by the fact that the operator Empty is nullary and thus it remains polymorphic. We should concretize its type, as we are doing it for non-nullary operators.

@Kukovec any ideas?

Snowcat will actually correctly infer the type at the application site. The problem is, you can't automatically backpropagate. Consider this:
VARIABLES
    \* @type: Set(Int);
    set1,
    \* @type: Set(Str);
    set2,

LET \* @type: () => Set(a);
        Empty == {}
    IN
    /\ set1 = Empty
    /\ set2 = Empty

Now, if this operator wasn't nullary and reached the inliner (or if the keepNullary flag was off) , the procedure there should resolve polymorphism while evaluating the application.  The only solution I can come up with is to force-inline nullary polymorphic operators. This should be a relatively minor change to Inliner. We could make this another flag, but it's  probably cleaner if this happens by default and the keepNullary flag only applies to monomorphic operators.

authors: Kukovec konnov


text:
Apalache.tla: the standard module for Apalache

Following #183, this PR introduces the standard module Apalache.tla that gives the user access to (almost all of) internal operators introduced by Apalache. Most importantly, it introduces the assignment operator x := e. This opens the way to deal with #181.

Thanks for the comments, @shonfeder!

Thanks for the replies!

I will merge this pull request

authors: konnov shonfeder


text:
Specify Light client logic in the context of relayer

Until now we were mostly discussing the lightnode case and the ibc handler case independently.
The goal is to unify these views. For instance,

reconsider the light client detection spec with the use-case of the ibc-handler being the primary

evidence generation for the secondaries would remain the same
evidence generation for the primary would be different as it must be aligned to the history of the ibc-handler
we might adapt "createEvidenceforPeer" for the ibc-handler case

we might also consider the use-case where the relayer is permanently online and runs on a full node

computing evidence for the ibc handler would be significantly simplified as it could react on the first bad header, and the block at the trustedheight of the ibc hander and the full node match
evidence for the full node would just be the bad header with its trusted height

We had a Zoom meeting today to work closer on these issues. @ancazamfir will finish up some work related to evidence in the relayer implementation, and I will then review the code and see how we can consolidate a spec on detection evidence handling with the IBC/Relayer use case in mind.

repo: informalsystems/ibc-rs


text:
Syntax issue with a zero-argument pure function

I am not sure to understand why this is failing:
module A {
  pure def foo(): bool = {
    true
  }
  var x: bool
  action init = all {
    x' = foo()
  }
}

as follows:
static analysis error: error: [QNT000] Can't unify different types of effects
Trying to unify Pure and () => e0
Trying to infer effect for operator application in foo()

whereas the code below actually works:
module A {
  pure def foo(): bool = {
    true
  }
  var x: bool
  action init = all {
    x' = foo
  }
}

I think our intent was to make people use val in this case, not def. The error message is confusing though. @bugarela wdyt?

I can't think of a scenario where someone would want to used a zero-argument def instead of a val. So perhaps we should drop support for zero argument defs at all?

I can't think of a scenario where someone would want to used a zero-argument def instead of a val. So perhaps we should drop support for zero argument defs at all?

I agree, in case of defs it does not make sense to write something like def foo() = .... However, it could be good for actions, as discussed in #220.

authors: bugarela konnov otrack

repo: informalsystems/quint


text:
Reference canUpdate and canCreate implemented

This pull request adds some functionality to the reference object as well as the catalog object. These changes are meant to check if a user has the proper permissions to edit or create a record.
Catalog.meta was added as a way to get the associated metadata for the catalog object. This request is made as part of the Catalog.get() request.
Reference.session setter and getters added. The setter was added so that a session object was available in ermrestJS without making another request to the server because the session is grabbed in the UI initially. The getter was required because of the linter. It's a common paradigm to define getters along with setters.
Reference.canUpdate and Reference.canCreate do the permission checks. Each calls the same function and behaves identically currently, but that can change in the future.

This PR needs to be closed before chaise PR #565 can be merged.

I update the PR with the changes suggested in your comments @rob and @howdyjessie. However, there's a bug with the test suite that doesn't allow you to define a set of ACLs on the catalog object. It currently uses the ACLs that come from dev.isrd.

This is blocked by #176.

The tests that fail, because of ACLs not being properly parsed from the test setup file, are marked with xit so they won't run. I will fix this when that is resolved. @hongsudt asked that that issue doesn't hold up the PR.

repo: informatics-isi-edu/ermrestjs


text:
🛑 CAU / CAE is down

In f04d8ca, CAU / CAE (http://mesadeayuda.unimonserrate.edu.co:8080/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: CAU / CAE is back up in b1824a8.

repo: infraestructuraidt/status


text:
MissingFormatArgumentException during beanstalk-maven-plugin:1.4.0:wait-for-environment

When deploying my application to Elastic Beanstalk, I got the following exception that caused the build to fail:
[INFO] --- beanstalk-maven-plugin:1.4.0:wait-for-environment (default) @ my-project ---
[INFO] Environment Lookup
[INFO] ... with cname set to 'my-project-dev.elasticbeanstalk.com'
[INFO] ... with status   set to 'Ready'
[INFO] ... with health equal to 'Green'
[INFO] WARN Wed Jan 06 13:29:28 EST 2016 Process termination taking longer than 10 seconds.
[INFO] INFO Wed Jan 06 13:29:35 EST 2016 New application version was deployed to running EC2 instances.
[INFO] INFO Wed Jan 06 13:29:35 EST 2016 Environment update completed successfully.
[WARNING] FAILURE
org.apache.maven.plugin.MojoFailureException: Failed
	at br.com.ingenieux.mojo.aws.AbstractAWSMojo.handleException(AbstractAWSMojo.java:394)
	at br.com.ingenieux.mojo.beanstalk.cmd.BaseCommand.handleException(BaseCommand.java:83)
	at br.com.ingenieux.mojo.beanstalk.cmd.BaseCommand.execute(BaseCommand.java:75)
	at br.com.ingenieux.mojo.beanstalk.env.WaitForEnvironmentMojo.executeInternal(WaitForEnvironmentMojo.java:77)
	at br.com.ingenieux.mojo.aws.AbstractAWSMojo.execute(AbstractAWSMojo.java:357)
	at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
	at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
	at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
	at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
	at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
	at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:497)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
	at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
	at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: java.util.MissingFormatArgumentException: Format specifier '% o'
	at java.util.Formatter.format(Formatter.java:2519)
	at java.util.Formatter.format(Formatter.java:2455)
	at java.lang.String.format(String.java:2928)
	at br.com.ingenieux.mojo.beanstalk.cmd.BaseCommand.info(BaseCommand.java:67)
	at br.com.ingenieux.mojo.beanstalk.cmd.env.waitfor.WaitForEnvironmentCommand.executeInternal(WaitForEnvironmentCommand.java:255)
	at br.com.ingenieux.mojo.beanstalk.cmd.env.waitfor.WaitForEnvironmentCommand.executeInternal(WaitForEnvironmentCommand.java:46)
	at br.com.ingenieux.mojo.beanstalk.cmd.BaseCommand.execute(BaseCommand.java:73)
	... 23 more
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1:20.389s
[INFO] Finished at: Wed Jan 06 13:30:15 EST 2016
[INFO] Final Memory: 44M/393M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal br.com.ingenieux:beanstalk-maven-plugin:1.4.0:wait-for-environment (default) on project my-project: Failed: Format specifier '% o' -> [Help 1]

This has never happened before, and the next build succeeded as expected. I'm not sure if there's anything that you can do about this, but I figured I'd report it in case it reveals some problem that you weren't previously aware of.

Ok, fixed. That was a fast one :)

authors: MusikPolice aldrinleal

repo: ingenieux/beanstalker


text:
[Question] - OctoberCMS to SAAS platform

Hello !
I'm actually making specifications for a project for a customer of mine.
I saw your plugin and I think that could help me bootstrap my project.
I'll have 4 types of profiles on the platform :

Customers
Companies
Companies manager
Super administrator

Goal is that each company has its own dashboard and should be able from here to create "one page" to present their activity on the platform customers will be able to browse.
Companies manager depending on the company location will have a separate dashboard to have an overview on some of the companies.
Super administrator will have an overview on everything.
I was wondering if such a plugin could help me reach that goal ? As far as I understood  yes.
If this is the case, I can also help improving it.
Would love to discuss with you to have your point of view.

Hi,
Sorry for delay.
As far as I understand your requirements - yes :)
Creating a skeleton for the app should be fast enough to just give it a try and check if this is what you are searching for.

authors: Astriel czerwonyd

repo: initbizlab/oc-cumuluscore-plugin


text:
new post: multi cluster monitoring with Prometheus and inlets

Signed-off-by: Johan Siebens johan.siebens@gmail.com

Can we have an image higher up in the post, like the architecture diagram we had before?
And a new lead image instead of the bridge.

The architecture diagram is already available in the introduction (line 16)
Do you have a source to find good lead images?

added new lead image

I use unsplash and pexels - crop and then resize to 1660px width. And export to 70% quality aiming for < 280KB size.

Just jumping in with a suggestion for image optimization:
Maybe https://github.com/marketplace/imgbot is a good idea for this. It reduces file sizes for images by removing human non-visible details from the images. Afaik it's free for public repos

authors: alexellis jsiebens spekulatius


text:
Fix  the issue

Description

Short description here *

closes #2650
Self Check:
Strike through any lines that are not applicable (~~line~~) then check the box

[ ] Attached issue to pull request
[ ] Changelog entry
[ ] Type annotations are present
[ ] Code is clear and sufficiently documented
[ ] No (preventable) type errors (check using make mypy or make mypy-diff)
[ ] Sufficient test cases (reproduces the bug/tests the requested feature)
[ ] Correct, in line with design
[ ] End user documentation is included or an issue is created for end-user documentation (add ref to issue here: )

Reviewer Checklist:

[ ] Sufficient test cases (reproduces the bug/tests the requested feature)
[ ] Code is clear and sufficiently documented
[ ] Correct, in line with design

This is a draft so the template has not been filled in yet. I first need to get feedback. My fix actually breaks test cases. However, I think these test cases + the code it tests is no longer required. This fix solves the issue by pushing it entirely to pip.
The issue was/is that the compiler sees both the original and the compiler venv (I use compiler here, but this also counts for the agent). The fix put into place so support inmanta-lsm from rpm was to remove all the packages available in the parent env before doing a pip install. This worked fine I think but started going wrong when we started pinning the version of inmanta-lsm in the lsm module. The "diff" logic contains some error it seems.
By setting the pythonpath like in this patch, the diffing is not required because after activating the venv it will see the aggregated list of packages.

This is a draft so the template has not been filled in yet. I first need to get feedback. My fix actually breaks test cases. However, I think these test cases + the code it tests is no longer required. This fix solves the issue by pushing it entirely to pip.
The issue was/is that the compiler sees both the original and the compiler venv (I use compiler here, but this also counts for the agent). The fix put into place so support inmanta-lsm from rpm was to remove all the packages available in the parent env before doing a pip install. This worked fine I think but started going wrong when we started pinning the version of inmanta-lsm in the lsm module. The "diff" logic contains some error it seems.
By setting the pythonpath like in this patch, the diffing is not required because after activating the venv it will see the aggregated list of packages.

repo: inmanta/inmanta-core


text:
app-misc/zigbee2mqtt overwrites configuration file on update

app-misc/zigbee2mqtt stores its data files in /var/lib/zigbee2mqtt but by default this is not protected by CONFIG_PROTECT and the users' configuration.yaml will get overwritten with the template file on every update.
According to https://devmanual.gentoo.org/general-concepts/config-protect/index.html this can be overridden by ebuilds.

Thank you very much, I was already using CONFIG PROTECT but there was a problem with the substitution of the PN variable

Hmm, the update to 1.31.0 today clobbered my configuration.yaml again.

I forgot to tell you that before updating you will check that the file /etc/env.d/90zigbee2mqtt contains CONFIG_PROTECT="/var/lib/zigbee2mqtt"
If you look now you will have the variable correctly
If not, even if you have corrected the problem, Gentoo will use the old file
Check it and tell me

Yep it's there now.


text:
fix: alias list is empty in new acounts by default

The alias list is empty by default when mediate is grant. After receiving a 'mediate-grant' message the 'recipient' should update his 'recipient_did' with a 'recipient-update' message and add DIDs. In order for the 'mediator' to start accepting Forward Message for those DIDs.

Related with https://github.com/decentralized-identity/didcomm.org/pull/91 and https://github.com/decentralized-identity/didcomm.org/issues/88

repo: input-output-hk/atala-prism-mediator


text:
feat: implement derivableKey an include it into Secp256k1PrivateKey

Overview
This PR includes a DerivableKey interface and Secp256k1 implements it to make it derivable.
Checklist
My PR contains...

[ ] No code changes (changes to documentation, CI, metadata, etc.)
[ ] Bug fixes (non-breaking change which fixes an issue)
[ ] Improvements (misc. changes to existing features)
[x] Features (non-breaking change which adds functionality)

My changes...

[ ] are breaking changes
[x] are not breaking changes
[ ] If yes to above: I have updated the documentation accordingly

Documentation

[ ] My changes do not require a change to the project documentation
[x] My changes require a change to the project documentation
[ ] If yes to above: I have updated the documentation accordingly

Tests

[ ] My changes can not or do not need to be tested
[x] My changes can and should be tested by unit and/or integration tests
[ ] If yes to above: I have added tests to cover my changes
[ ] If yes to above: I have taken care to cover edge cases in my tests

Code Coverage

File
Coverage [54.81%]

atala-prism-sdk/src/commonMain/kotlin/io/iohk/atala/prism/walletsdk/apollo/ApolloImpl.kt
57.14%

atala-prism-sdk/src/commonMain/kotlin/io/iohk/atala/prism/walletsdk/apollo/utils/Secp256k1PrivateKey.kt
50.00%

Total Project Coverage
26.80%

authors: atala-dev cristianIOHK


text:
Expose ledger types PParams and PParamsUpdate with support code

Changelog
- description: |
    Expose ledger types `PParams` and `PParamsUpdate` with support code
# uncomment types applicable to the change:
  type:
  # - feature        # introduces a new feature
  # - breaking       # the API has changed in a breaking way
  - compatible     # the API has changed but is non-breaking
  # - optimisation   # measurable performance improvements
  # - improvement    # QoL changes e.g. refactoring
  # - bugfix         # fixes a defect
  # - test           # fixes/modifies tests
  # - maintenance    # not directly related to the code
  # - release        # related to a new release preparation
  # - documentation  # change in code docs, haddocks...

Context
This a a simplified version of https://github.com/input-output-hk/cardano-api/pull/182 with all the refactoring, newtype wrapper and aeson instances removed.  The removed commits were mainly to facilitate the custom aeson instances which during discussions were determined to not be needed.
Checklist

[ ] Commit sequence broadly makes sense and commits have useful messages
[ ] The change log section in the PR description has been filled in
[ ] New tests are added if needed and existing tests are updated.  These may include:

golden tests
property tests
round trip tests
integration tests
See Running tests for more details

[ ] The version bounds in .cabal files are updated
[ ] CI passes. See note on CI.  The following CI checks are required:

[ ] Code is linted with hlint.  See .github/workflows/check-hlint.yml to get the hlint version
[ ] Code is formatted with stylish-haskell.  See .github/workflows/stylish-haskell.yml to get the stylish-haskell version
[ ] Code builds on Linux, MacOS and Windows for ghc-8.10.7 and ghc-9.2.7

[ ] The changelog section in the PR is updated to describe the change
[ ] Self-reviewed the diff

These are intended to be used by the CLI.

repo: input-output-hk/cardano-api


text:
Cardano.Crypto.KES using libsodium bindings

@phadej 's #138, rebased onto master, and fixing divergent development in the Hash.Short module.

It looks like only the stack build is failing. Honestly, I suggest just removing the stack.yaml file and the stack build from the CI config, unless you particularly want to maintain it.

repo: input-output-hk/cardano-base


text:
[BUG] - minSeverity should not influence the peers list

External   otherwise.
Summary
If I set minSeverity to "Error" or "Warning" peers would show up in the peers list (node gui -LiveMode) but are not counted (peers: 0).
The node also won't receive any txs with minSeverity = "Error" or "Warning".
If I set minSeverity to Info or Debug it works.
Steps to reproduce
Steps to reproduce the behaviour:

Go to config.json
change minSeverity to "Error" or "Warning"
start node in LiveMode

Expected behavior
The loglevel should not influence the peers list.
System info (please complete the following information):

OS: Ubuntu
Version 20.04
13

true, this is inconvenient. the minimum severity filter acts globally.
in the configuration under "options:" one can set severity filters on individual namespaces in "mapSeverity:"

authors: CodiePP bahamasbahamas

repo: input-output-hk/cardano-node


text:
Export TextEnvelopeCddl(..) from Cardano.Api

This is necessary to be able to refer to results of deserialiseTxLedgerCddl

Subsumed by: #4635


text:
cardano-sl cant  sync

[cardano-sl.node:Debug:ThreadId 336] [2019-08-20 04:55:21.49 UTC] ticking the slot in the submission layer...
[cardano-sl.node:Debug:ThreadId 336] [2019-08-20 04:55:26.50 UTC] ticking the slot in the submission layer...
[cardano-sl.production:Info:ThreadId 329] [2019-08-20 04:55:28.47 UTC] Triggering recovery because we need it
[cardano-sl.production:Debug:ThreadId 329] [2019-08-20 04:55:28.47 UTC] Recovery triggered, requesting tips from neighbors
[cardano-sl.diffusion.outboundqueue.self:Debug:ThreadId 329] [2019-08-20 04:55:28.47 UTC] message MsgRequestBlockHeaders Nothing not enqueued to any nodes of type NodeRelay since no such (relevant) peers listed in Peers {peersRoutes = Routes {_routesCore = [], _routesRelay = [], _routesEdge = []}, peersClassification = fromList []}
[cardano-sl.production:Debug:ThreadId 329] [2019-08-20 04:55:28.47 UTC] Finished requesting tips for recovery
[cardano-sl.node:Debug:ThreadId 336] [2019-08-20 04:55:31.50 UTC] ticking the slot in the submission layer...
[cardano-sl.node:Debug:ThreadId 336] [2019-08-20 04:55:36.50 UTC] ticking the slot in the submission layer...
[cardano-sl.node:Debug:ThreadId 336] [2019-08-20 04:55:41.50 UTC] ticking the slot in the submission layer...
[cardano-sl.node:Debug:ThreadId 336] [2019-08-20 04:55:46.50 UTC] ticking the slot in the submission layer...
[cardano-sl.production:Info:ThreadId 329] [2019-08-20 04:55:49.47 UTC] Triggering recovery because we need it
[cardano-sl.production:Debug:ThreadId 329] [2019-08-20 04:55:49.47 UTC] Recovery triggered, requesting tips from neighbors
[cardano-sl.diffusion.outboundqueue.self:Debug:ThreadId 329] [2019-08-20 04:55:49.47 UTC] message MsgRequestBlockHeaders Nothing not enqueued to any nodes of type NodeRelay since no such (relevant) peers listed in Peers {peersRoutes = Routes {_routesCore = [], _routesRelay = [], _routesEdge = []}, peersClassification = fromList []}
[cardano-sl.production:Debug:ThreadId 329] [2019-08-20 04:55:49.47 UTC] Finished requesting tips for recovery
[cardano-sl.production:Info:ThreadId 334] [2019-08-20 04:55:51.45 UTC] createAndArchiveCheckpoints is starting...
[cardano-sl.production:Info:ThreadId 334] [2019-08-20 04:55:51.45 UTC] pruneAndCompress pruned 0 old archives.
[cardano-sl.production:Info:ThreadId 334] [2019-08-20 04:55:51.45 UTC] pruneAndCompress compressed 1 archives.
[cardano-sl.diffusion:Error:ThreadId 318] [2019-08-20 04:55:51.47 UTC] DNS resolution for [NodeAddrDNS "todo.defaultDnsDomain.com" Nothing] gave no results
[cardano-sl.diffusion:Error:ThreadId 318] [2019-08-20 04:55:51.47 UTC] DNS resolution failure for [NodeAddrDNS "todo.defaultDnsDomain.com" Nothing]: [NameError]
[cardano-sl.node:Debug:ThreadId 336] [2019-08-20 04:55:51.50 UTC] ticking the slot in the submission layer...
[cardano-sl.node:Debug:ThreadId 336] [2019-08-20 04:55:56.50 UTC] ticking the slot in the submission layer...
[cardano-sl.node:Debug:ThreadId 336] [2019-08-20 04:56:01.50 UTC] ticking the slot in the submission layer...
[cardano-sl.node:Debug:ThreadId 336] [2019-08-20 04:56:06.50 UTC] ticking the slot in the submission layer...
---node-info---
curl http://localhost:8090/api/v1/node-info
{"data":{"syncProgress":{"quantity":0,"unit":"percent"},"blockchainHeight":null,"localBlockchainHeight":{"quantity":0,"unit":"blocks"},"localTimeInformation":{"status":"available","localTimeDifference":{"quantity":4570,"unit":"microseconds"}},"subscriptionStatus":{}},"status":"success","meta":{"pagination":{"totalPages":1,"page":1,"perPage":1,"totalEntries":1}}}
---node-info---
plz,help.

@Alteryy How did you solve it?

authors: Alteryy penuel-li

repo: input-output-hk/cardano-sl


text:
Upgrade Jörmungandr integration to 0.8.3 / 0.8.4 (when available)

Issue Number

N/A
Overview

[x] I have bumped nix revision to 0.8.3
[x] I have re-generated arbirtary binary blocks using 0.8.3
[x] I have re-generated the genesis file using jcli@0.8.3 (no change here)

Comments

Just to see if it builds. We expect 0.8.4 soon.

bors try

repo: input-output-hk/cardano-wallet


text:
How to run a full node on my server and use Daedalus as lite wallet connecting to my full node?

Hi,
Currently Daedalus is trying to do everything on the same machine. However, I would like to run the Cardano full node on my server machine (running 24/7). And I would like to open Daedalus on my desktop pc, which could be able to connect to the full node on my local server. Allowing very fast start-up times and less strain on the desktop.
How can I do this setup?
Regards,
Melroy van den Berg
Ps. I think the Cardano full node running on the server is not the problem. The issue is how can I configure Daedalus to use my full node from my server (within my local area network) instead of locally spinning-up a Cardano full node.

Hi @danger89 thank you for your Idea. This is unfortunately not so simple, since cardano-wallet communicates with cardano-node via local IPC and not TCP.
We are not planning to do it in the short/mid-term, but I will definitely tell our product owner about it 😉
cc: @daniloprates @mariusb

That is very sad to hear. I really hope this could be an option in the near future. Since that will really help the user experience of daedalus.

Hi @danger89 I hope you can understand us, this is not so simple to do it from Daedalus. There is one video of someone who connected Nami-Wallet to Daedalus, this might be interesting for you? https://www.youtube.com/watch?v=_-WDEaSnaWU

Related: https://github.com/input-output-hk/cardano-wallet/issues/1556

repo: input-output-hk/daedalus


text:
Investigate how to share version bounds between different cabal packages

We want to try to put all existing cabal packages into one (or two, one each for Network/Consensus) cabal package using multiple public sublibraries, in order to reduce duplication for version bounds using e.g. the cabal's common stanzas feature. Note that this approach would also allow us to avoid repeating many other aspects, i.e. the version number, warning flags, default extensions, default language etc.
However, note that there a pros and cons to having just one version number for all consensus packages, which we should revisit.
Also, we should ask Plutus for any warning signs/pitfalls around multiple public libraries.
Alternatively, if this does not work (i.e. @jorisdral remembers problems w.r.t. cyclic dependencies while doing sth similar), we have to come up with another strategy to manage version bounds without duplicating them everywhere.
Context/motivation: https://github.com/input-output-hk/ouroboros-network/pull/4155#discussion_r1029507558

@amesgen, how that we split Network and Consensus, is this issue still relevant? If not, is this still current?

authors: amesgen dnadales

repo: input-output-hk/ouroboros-consensus


text:
[CGP-412] Algorithmic Unrestricted Type System

Pursuant to CGP-412
NOTE: When comparing this branch, compare it to the CGP-411 branch, not master; this PR is a branch from CGP-411 and should be merged w/ master only after CGP-411 has been merged.
The big change here is that we've added a variant of the type system which guarantees that we synthesize normal types. Consequently, we normalize in different places to ensure this, and we can take advantage of this in other places to omit some normalizations.

I don't think you included the figure in the actual document...

authors: michaelpj psygnisfive

repo: input-output-hk/plutus


text:
Make BuiltinByteString (and others) more opaque

In the presence of bang patterns, GHC will very aggressively take apart
BuiltinByteStrings and look into the underlying ByteString. This is
bad for our users.
We can avoid this by making BuiltinByteString data instead of
newtype (at the cost of writing some tedious instnaces). (Also
applies to the other Builtin* types that were supposed to be opaque.)
However, that doesn't save us entirely. GHC will still generate pattern
matches on BuiltinByteString to evaluate it. For some reason, it
doesn't generate default-only matches (which we already handle), even
though it doesn't use any of the variables that it binds.
Fortunatley, we can easily adapt the code to handle the more general
case of single-alternative case expressions which don't use any of the
bound variables.
(I scratched my head about why this wasn't working for a while until I
came to the realisation recorded in Note [Occurrence analysis].)
As a bonus, this also generates slightly better code for the common case
of matching on Unit, which happens to generate such pattern matches
also!

Pre-submit checklist:

Branch

[x] Tests are provided (if possible)
[x] Commit sequence broadly makes sense
[x] Key commits have useful messages
[ ] Relevant tickets are mentioned in commit messages
[x] Formatting, materialized Nix files, PNG optimization, etc. are updated

PR

[ ] (For external contributions) Corresponding issue exists and is linked in the description
[x] Self-reviewed the diff
[x] Useful pull request description
[x] Reviewer requested

cc @phadej @treeowl I think this is a nicer and more general solution. It also fixes strict usage of the other Builtin* types.

@michaelpj you make them data, which adds a box. That is a trade-off. I'd suggest that IOHK go through cardano-node code so the plutus Builtin* types are avoided in any even remotely performance/memory-efficiency important contexts. It's a cost which doesn't need to be paid, IMO.
(And I suspect that difference is noticeable, CurrencySymbol, TokenName, Value are full of BuiltinByteStrings.).

That's fair, but I doubt it makes a significant difference. Anyway, cardano-ledger doesn't use our Value, it only creates it for passing to scripts.

Does this also have to be applied for the newtype opacity of BuiltinData <-> PLC.Data? https://github.com/input-output-hk/plutus/blob/master/plutus-tx/src/PlutusTx/Builtins/Internal.hs#L317

authors: bezirg michaelpj phadej


text:
Make forcing builtin functions pure and work-free

and added a test.

Forcing builtin functions is currently work-free

If it is currently work-free then I think we should do this.
The reason I want to do this is because it is needed by CSE. It's a bad idea to consider work-free items like force ifThenElse as a common expression. If isWorkFree doesn't work as it should, then I'd have to implement a totally separate one just for CSE.

If it is currently work-free then I think we should do this.

Or we could come up with a more precise version. Forcing a builtin is work-free if the builtin does not have a single type argument.
You also possibly need to handle repeated forcing. In fact, doesn't the work-free check already look at whether the builtin is saturated, which should subsume this?

You also possibly need to handle repeated forcing.

This is already being checked. This is what splitForces is for.

In fact, doesn't the work-free check already look at whether the builtin is saturated, which should subsume this?

No - the additional check I added does this; it isn't done currently.

Ah, it's behind the PIR one. Seems better to bring it in line with the PIR one, which I think handles all builtin applications correctly? https://github.com/input-output-hk/plutus/blob/master/plutus-core/plutus-ir/src/PlutusIR/Purity.hs#L149

Seems better to bring it in line with the PIR one, which I think handles all builtin applications correctly?

Yeah that seems the right thing to do

Ok, I'll put this down as a good first task for newhires


text:
Server Events

Could this also be used to send messages on server events. For example when the server shuts down/crashes and when it comes back online?

Good question. I think the mod could be extended to add some of those features.
Graceful server shutdowns are a maybe. I'd have to look in the minetest code to see if there is a hook that triggers when the server is shutting down.
Crashes are probably a no. Since the mod runs on the server, if the server has unexpectedly crashed, there's no server to run the mod so it's not really possible.
When the server starts, that's definitely a yes.

Excellent! I think those would be very worthwhile additions. 🙂

license: Unlicense


text:
[Proposal] add conference option add --conference  or add --details conference

I want to make a  new event with Google Meet url.
Therefore, I would suggest adding the conference option to the add command.
I tried to add a --detail conference and --conference.
Please check it and consider this change.

as of 4.3.0 we've already got conference in the --details output.  Afaik, the idea behind the conference stuff is that it should be possible to store other conference providers there beyond Google Meet.
@michaelmhoffman can you take a look at this PR?

@michaelmhoffman
What do you think this PR?

@michaelmhoffman
What do you think this PR?

I agree with @jcrowgey—I would suggest that the minimum for adding this kind of functionality is that the interface permits multiple conferencing providers. I don't think it would be absolutely necessary to implement more than one provider at first but you would want an interface that could expand to it if possible.
I also think the interface should allow specifying existing conference IDs and not just generating new ones—you might want generating a new interface to be a special case.

@michaelmhoffman
Thank you for reviewing!
You make a good point. I rethink the interface for conference.
This PR is closed.

authors: jcrowgey michaelmhoffman sassy

repo: insanum/gcalcli


text:
A.33.IR38.authority.url.node

This issue has been extracted from the issue list on:https://ies-svn.jrc.ec.europa.eu/issues/2685
Comment
The test does not specify which information inside AutorityURL actually represents the namespace:
-<AuthorityURL name="MAGRAMA">
<OnlineResource xlink:href="http://www.magrama.gob.es" xlink:type="simple" />
</AuthorityURL>

This issue is a bit hairy and, long ago, I tried to document it here:
http://bit.ly/1RPtlLm
The INSPIRE View Service guidelines require wms:Identifier.
It is OGC WMS 1.3.0 which requires the authority attribute for the   element
This would leave the capabilities valid
ESMAGRAMACALIDADDIFERENCIADASIDRA08112013001
But then you would need a corresponding

Which is not valid.
There is currently no solution.
I reported this to the MIG long ago and I also raised a comment in the ats-view-wms
You might want to raise the issue with CY MIG representative so that it can get to the group in time.
ats-view-wms	A.32.IR38.layer.identifier.node			The identifiers found here, together with the information in authorityURL, shall match the information found from MetadataURL.
ats-view-wms	A.33.IR38.authority.url.node			The test does not specify which information inside AutorityURL actually represents the namespace:
-

We have services that use <AuthorityURL> but not intended for anything to do particularly with INSPIRE .:
```<AuthorityURL name="BritishGeologicalSurvey">
        <OnlineResource
            xmlns:xlink="http://www.w3.org/1999/xlink"
            xlink:href="http://data.bgs.ac.uk/ref/BritishGeologicalSurvey"/>
    </AuthorityURL>```

As there is no requirement for a Unique Resource Identifier to be an HTTP-URI with namespace, and as the AuthorityURL doesn't have a namespace in any case do we actually have a problem here?
<!-- In the root layer -->
<AuthorityURL name="BritishGeologicalSurvey">
    <OnlineResource
        xmlns:xlink="http://www.w3.org/1999/xlink"
        xlink:href="http://data.bgs.ac.uk/ref/BritishGeologicalSurvey"
        xlink:type="simple" />
</AuthorityURL>

<!-- in a layer -->
<!-- we could have -->
<Identifier authority="BritishGeologicalSurvey">some UUID</Identifier>
<!-- we could also have -->
<Identifier authority="BritishGeologicalSurvey">some HTTP-URI</Identifier>
<!-- we could also have -->
<Identifier authority="BritishGeologicalSurvey">some namespace</Identifier>

The combination of identifiers per any authority (as referenced through the authority URL) will/should give us a Unique Resource Identifier (which doesn't have to be an HTTP-URI).

ats-view-wms A.32.IR38.layer.identifier.node The identifiers found here, together with the information in authorityURL, shall match the information found from MetadataURL.
Where does this requirement come from?

This issue is a bit hairy and, long ago, I tried to document it here:
Please copy and paste this url in your browser to avoid encoding of the curly braces:
http://inspire-geoportal.ec.europa.eu/documentation/ea/ea_html/index.htm?guid={64153834-E50F-4340-A03C-1BA92DE2FB6F}

Going back to the original comment, I agree that the wording of req 38 is not 100% clear, but the only possible interpretation that I have from the wording and the example is the following:

AuthorityURL/@name is the namespace
Identifier/@authority is the namespace
Identifier/text() is the local identifier
AuthorityURL/OnlineResource/@xlink:href points to a resource that has more information about the namespace
AuthorityURL does not need to be repeated in sub-layers

If that would be the common interpretation I see two issues:

AuthorityURL/@name cannot be empty, but the namespace is not required by INSPIRE (as pointed out by @aquaglia )
The test method does not test the requirement as it only asserts the existence of AuthorityURL in all Layer elements (which is not required in sub-layers and which is not complete as there is not assertion related to Identifier elements)

what is the definition of a namespace?

is AuthorityURL/@name actually a namespace, if it doesn't map to the RS_identifier codespace then there isn't necessarily a conflict

is AuthorityURL/@name actually a namespace

Decision in call on April 15: Two issues can be distinguished.

Namespace: in general we will have to live with this, it just something that we inherit from the ISO standard
This may create issues for many, as it has impact -> continue discussion on GitHub
This should be resolved in the TG
Non-INSPIRE layers: separate issue -> requires TG update

Resolution during call on April 28:

Unclear how to resolve the unresolved namespace issue. Needs clarification in the TG.
Do not test it until this has been clarified.

authors: aquaglia cportele jensscheerlinck nmtoken timrduffy

repo: inspire-eu-validation/ats-view-wms