Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

remote tracking #3

Open
wants to merge 1,332 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1332 commits
Select commit Hold shift + click to select a range
524f3c3
fix dashboard metric completion on backspace in Firefox
ploxiln Jan 19, 2020
78457bb
better query log
replay Apr 20, 2020
7c2de62
Allow pickle protocol to be configurable for carbonlink requests.
alikhtag Apr 21, 2020
88045db
simplifications, removing target context
replay Apr 21, 2020
6c234d3
refactor InputParameterError so it has useful string properties
replay Apr 21, 2020
ca597ed
seriesList type validation was too permissive
replay Apr 23, 2020
8342d6b
variable naming
replay Apr 23, 2020
9e3346a
asPercent may be used as an aggregator
replay Apr 27, 2020
41540e7
Merge pull request #2594 from graphite-project/asPercent
replay Apr 28, 2020
2dbc2a2
making nodes in groupByNodes optional
replay May 5, 2020
6af8f0b
add test for groupByNodes without nodes
replay May 5, 2020
879e006
Merge pull request #2597 from graphite-project/make_nodes_in_groupByN…
replay May 6, 2020
5447d18
privatize linearRegressionAnalisys so it will not show in documentation
piotr1212 May 14, 2020
73444c4
Merge pull request #2602 from piotr1212/privatize_func
piotr1212 May 15, 2020
b10b74e
Revert "Add test for symlink that points up 1 dir"
piotr1212 May 16, 2020
6b6d30a
Revert "Fix get_real_metric_path for paths where an intermediate dire…
piotr1212 May 16, 2020
1f3817b
Merge pull request #2591 from alikhtag/improve/carbonlink-configurabl…
piotr1212 May 16, 2020
dcb9c36
Merge pull request #2587 from ploxiln/fix_saved_graphs_escape
piotr1212 May 16, 2020
94aad8f
Merge pull request #2589 from ploxiln/dash_complete_backspace
piotr1212 May 16, 2020
b2b9679
List Promitor as a collector tool
tomkerkhove May 17, 2020
1fd2068
Merge pull request #2593 from graphite-project/validate_series_list_m…
deniszh May 17, 2020
6d435c2
Merge pull request #2604 from piotr1212/revert_symlink
deniszh May 17, 2020
fac5a1d
Merge pull request #2605 from tomkerkhove/patch-1
deniszh May 17, 2020
0aacb4c
Update CHANGELOG.md
deniszh May 17, 2020
65d986e
Lock whitenoise dependency version
Carles-Figuerola May 19, 2020
0ed7dd7
Merge pull request #2606 from Carles-Figuerola/patch-1
piotr1212 May 28, 2020
3feadae
Sanitize dashboard name input to prevent XSS attack
StephenDsouza90 Jun 12, 2020
bd0d4cc
Added test case for sanitizing dashboard name
StephenDsouza90 Jun 14, 2020
53dbd30
Fix DeepSource failed checks
StephenDsouza90 Jun 14, 2020
6d7cd9d
Revert "Fix DeepSource failed checks"
StephenDsouza90 Jun 19, 2020
02ea677
Revert "Added test case for sanitizing dashboard name"
StephenDsouza90 Jun 19, 2020
ae82415
Revert "Sanitize dashboard name input to prevent XSS attack"
StephenDsouza90 Jun 19, 2020
e62ec5d
Use htmlEncode on dashboard name to prevent XSS
StephenDsouza90 Jun 19, 2020
7fa6a49
Update webapp/content/js/dashboard.js
StephenDsouza90 Jun 19, 2020
1b2c755
Merge pull request #2620 from StephenDsouza90/prevent-xss
deniszh Jun 28, 2020
f6d7d16
Update CHANGELOG.md
deniszh Jun 28, 2020
9e98872
fix & improve docs for *WithWildcards functions
Dieterbe Jul 13, 2020
182e7ca
Rename grammar.py to grammar_unsafe.py
romanek-adam Jul 17, 2020
e0474b6
Add thread-safe version of grammar.py
romanek-adam Jul 17, 2020
8272531
Merge pull request #2627 from romanek-adam/grammar-multi-threading-fix
piotr1212 Jul 21, 2020
0ab4710
functions view: replace Infinity in json response
ploxiln May 28, 2020
6c20de7
remove manually replacing of None with null in json output
ploxiln May 28, 2020
7e865e5
Merge pull request #2625 from grafana/fix-fn-with-wildcards-docs
deniszh Jul 31, 2020
09d214c
Merge pull request #2612 from ploxiln/refine_replace_nan_inf
deniszh Jul 31, 2020
2f13319
Update CHANGELOG.md
deniszh Jul 31, 2020
2fd4915
REsynthesize: New script forked from Synthesize to install Graphite o…
deividgdt Aug 16, 2020
17a34e7
Update CHANGELOG.md
deniszh Aug 16, 2020
2d90f54
Patch /static/ directory in Apache docs (#2635)
djmetzle Sep 11, 2020
1ba58ad
weightedAverage: raise an InputParameterError exception if the number…
fkaleo Sep 17, 2020
415e571
Update CHANGELOG.md
deniszh Sep 17, 2020
d1314c0
Update CHANGELOG.md
deniszh Oct 13, 2020
8549ec0
Proper groups for isNonNull() and powSeries()
deniszh Oct 19, 2020
6076019
Merge pull request #2644 from deniszh/DZ-Move-Groups
piotr1212 Oct 20, 2020
8b0fafd
Update CHANGELOG.md
deniszh Oct 22, 2020
9b7c761
Backport unicode fix from piotr1212@17e23ef (#2643)
deniszh Oct 22, 2020
9ae5397
Update CHANGELOG.md
deniszh Oct 22, 2020
4e117ca
aggregateLists function
alikhtag Oct 23, 2020
f172763
Add seriesLists to functions
alikhtag Oct 23, 2020
a54cda3
Add seriesLists to functions
alikhtag Oct 23, 2020
5fdc6bc
Add seriesLists to functions
alikhtag Oct 23, 2020
1a3b2e2
Update CHANGELOG.md
deniszh Oct 24, 2020
7a548d1
Find api documentation (Fixing #2616) (#2646)
deniszh Oct 25, 2020
43cc077
Update CHANGELOG.md
deniszh Oct 25, 2020
0b20c84
Add diffSeriesLists, sumSeriesLists, multiplySeriesLists using aggreg…
alikhtag Oct 28, 2020
bd87cd9
Change name that will be outputed.
alikhtag Oct 29, 2020
53a50b5
Update CHANGELOG.md
deniszh Oct 29, 2020
679fff2
Add min, max, avg tests
alikhtag Oct 29, 2020
b5ed555
docs and lint
alikhtag Oct 29, 2020
15e75f4
docs
alikhtag Oct 29, 2020
02fab10
Update whisper.rst with Python 3 fix (#2649)
cdeil Nov 5, 2020
ef9a483
Update CHANGELOG.md
deniszh Nov 5, 2020
97f4d85
Merge pull request #2647 from alikhtag/feat/series-lists-other-operat…
piotr1212 Nov 12, 2020
cc51437
Update CHANGELOG.md
deniszh Nov 12, 2020
1b0d466
utf-8 fix in unpickle
piotr1212 Nov 24, 2020
67dd35a
Update webapp/graphite/util.py
piotr1212 Dec 11, 2020
d5340c0
fix linting erros
piotr1212 Dec 14, 2020
3f39535
Aligning deepsource config
deniszh Dec 23, 2020
c7751f2
Fixing test as @ploxlin suggests
deniszh Dec 23, 2020
4d7b1a4
Merge pull request #2660 from deniszh/utf8unpickle
piotr1212 Dec 28, 2020
ff45f67
Fix expand braces (#2661)
deniszh Dec 28, 2020
f1acda6
Optionally resolve right hand dip in sums because of lack of current …
Dec 28, 2020
6383a40
Update CHANGELOG.md
deniszh Dec 28, 2020
b156651
Fix paths not matching description
thedoc31 Jan 22, 2021
644ea14
Merge pull request #2671 from thedoc31/patch-1
deniszh Jan 23, 2021
22a65eb
Update CHANGELOG.md
deniszh Jan 23, 2021
528d197
Adding CodeQL analysys
deniszh Jan 24, 2021
98c09b0
Tests on GHA, first try
deniszh Jan 24, 2021
8f06d19
Testing mysql differently
deniszh Jan 24, 2021
dffbfc6
typo
deniszh Jan 24, 2021
d6a2550
More fixes
deniszh Jan 24, 2021
3c00efe
127.0.0.1
deniszh Jan 24, 2021
f86cd0d
fixes
deniszh Jan 25, 2021
29bc790
fixing redis tests
deniszh Jan 25, 2021
a819467
Monkeypatching redis tests
deniszh Jan 25, 2021
8b5e4c2
Monkeypatching redis tests in place
deniszh Jan 25, 2021
37c08b1
debug
deniszh Jan 25, 2021
f7257c0
argh, forgot passenv
deniszh Jan 25, 2021
d345be4
moar fixes
deniszh Jan 25, 2021
cea0ed8
Removing pypy3 tests
deniszh Jan 26, 2021
244e2eb
more changes
deniszh Jan 26, 2021
9ae9f33
linting on latest pyyhon only
deniszh Jan 26, 2021
589107d
fixing travis
deniszh Jan 26, 2021
688313d
Amend web install docs (#2676)
deniszh Feb 7, 2021
3e5c430
fix shifting of resulting datapoints by one step into the future
zivillian Feb 15, 2021
0df6778
add last round
zivillian Feb 15, 2021
1805baa
adjust test data
zivillian Feb 15, 2021
19f2155
Merge pull request #2677 from deniszh/DZ-Gunicorn
deniszh Feb 16, 2021
5fec913
Merge branch 'master' into DZ-tests-GHA
deniszh Feb 28, 2021
11b4a7a
Merge pull request #2590 from graphite-project/full_query_log_on_inva…
replay Mar 30, 2021
e2f7478
Update CHANGELOG.md
deniszh Apr 5, 2021
1ca8e60
Update CHANGELOG.md
deniszh Apr 5, 2021
c2422fa
Merge branch 'master' into DZ-tests-GHA
deniszh Apr 5, 2021
88d97a4
You can disable info.log now (fixing #1860)
deniszh Apr 5, 2021
532c6e6
Resolves #2692 can't unpickle Interval/IntervalSet
drawks Apr 9, 2021
72160de
Merge pull request #2693 from drawks/iss_2692
drawks Apr 10, 2021
d7fb3ed
Update CHANGELOG.md
deniszh Apr 11, 2021
2278019
Merge pull request #2691 from deniszh/DZ-info-log-amend
deniszh Apr 11, 2021
e033270
Update CHANGELOG.md
deniszh Apr 11, 2021
3a476a3
Update CHANGELOG.md
deniszh Apr 18, 2021
8822032
backport release notes
deniszh Apr 18, 2021
3995e14
fix
deniszh Apr 18, 2021
9ee195c
Merge pull request #2696 from deniszh/DZ-Release-1.1.8
deniszh Apr 18, 2021
cd5bfdf
Merge pull request #2673 from deniszh/DZ-tests-GHA
deniszh Apr 19, 2021
6592c28
Depend on third-party scandir only for Python < 3.5
neirbowj May 31, 2021
357bfdd
Merge pull request #2706 from neirbowj/scandir_py35
deniszh May 31, 2021
1d136f5
Merge pull request #2682 from zivillian/2632
deniszh Jun 20, 2021
ff764e8
Update CHANGELOG.md
deniszh Jun 20, 2021
217ad6f
Add CodeSee architecture diagram workflow to repository
Sep 22, 2021
8139914
Merge remote-tracking branch 'upstream/master'
deniszh Sep 28, 2021
4462364
compressGaps function
deniszh Sep 28, 2021
21e60de
fixes
deniszh Oct 13, 2021
a897111
Merge pull request #2720 from deniszh/DZ-CompressGaps
deniszh Oct 14, 2021
5a91f3e
Update CHANGELOG.md
deniszh Oct 14, 2021
9e3e4e0
Update CHANGELOG.md
deniszh Oct 14, 2021
e344fab
Fix dependency issue for usage as Grafana data source.
frh-ivu Oct 29, 2021
f3e2175
Add pyparsing version restriction to tox tests.
frh-ivu Oct 29, 2021
75668db
Merge pull request #2722 from henkf/fix-pyparsing-dep
deniszh Nov 3, 2021
19685d0
Update CHANGELOG.md
deniszh Nov 3, 2021
2e58d21
Correct carbon-relay-ng url (#2723)
DanCech Nov 3, 2021
bc13e03
maxStep in requestContext for Finder (#2724)
deniszh Nov 5, 2021
e33a273
Update CHANGELOG.md
deniszh Nov 5, 2021
5de8405
Fix pyparsing > 3.0 compatibility issue. (#2727)
parrotpock Nov 15, 2021
5f35fc2
Update CHANGELOG.md
deniszh Nov 15, 2021
523c576
Update CHANGELOG.md
deniszh Jan 6, 2022
2105089
Forward port changes from #2729 to master (#2730)
deniszh Jan 22, 2022
51571cf
Replace another missed instance of Infinity in JSON (#2737)
bobemoe Mar 6, 2022
dee669e
Update CHANGELOG.md
deniszh Mar 7, 2022
ae416e9
raise exception when not recoverable
replay May 6, 2020
cc28992
use exception subclass InputValidationError
replay May 7, 2020
798de47
use different handlers for exceptions
replay May 7, 2020
8e99587
Implement upper lower case functions (#2586)
replay Mar 17, 2022
2ec4b6c
Update CHANGELOG.md
deniszh Mar 17, 2022
d2f8c86
Merge pull request #2740 from grafana/raise_exception_when_not_recove…
replay Mar 17, 2022
b38d5c8
fixing sphinx jinja dep
deniszh Apr 17, 2022
89cd54b
Update CHANGELOG.md
deniszh May 4, 2022
33a480b
Release notes for 1.1.9 (#2752)
deniszh May 22, 2022
b52987a
Release 1.1.10 (#2754)
deniszh May 22, 2022
ed08fa4
Spelling (#2772)
jsoref Aug 6, 2022
e7d08e6
Preparing master to Django 3.2 (#2766)
deniszh Sep 11, 2022
00741ac
Remove old comment (#2781)
jszopi Oct 6, 2022
d6bda76
Fixing typo in documentation (apache) (#2777)
anthony-trpc Oct 6, 2022
7b12026
Avoid infinite loop on summarize() (#2784)
jonnangle Oct 26, 2022
9c62600
Sanitize error output for prevent XSS security issues (#2782)
msaf1980 Oct 26, 2022
2f178f4
Fix XSS in some dashboards queries (#2785)
msaf1980 Oct 31, 2022
90076f6
Fix issue with too small season length (#2780) (#2787)
deniszh Nov 6, 2022
02bc0c8
Сheck applyByNode nodeNum arg (#2792)
msaf1980 Dec 13, 2022
11d9966
Introduce the term "node" (#2793)
jbmilgrom Dec 22, 2022
d6a1d2b
Pinning alabaster to 0.7.12 (#2805)
deniszh Feb 19, 2023
69ad41f
Update faq.rst
deniszh Mar 20, 2023
dca59dc
Merge pull request #2809 from graphite-project/deniszh-patch-1
deniszh Mar 21, 2023
b6d9272
If max(series) returns None then the test with > throws an error
Jul 12, 2023
d39d455
Merge pull request #2814 from cbowman0/useSeriesAbove_python3
deniszh Jul 12, 2023
ecc965a
Adding readthedocs config
deniszh Aug 15, 2023
d51a330
Fixing mariadb test invocation
deniszh Aug 15, 2023
2847106
oops, typo
deniszh Aug 15, 2023
86d59f5
fix mariadb healthcheck
deniszh Aug 15, 2023
73d5470
trying new python and django
deniszh Aug 15, 2023
19dbc54
Keeping Django 3.2
deniszh Aug 15, 2023
859fc91
OK, let's stabilize 3.10 first
deniszh Aug 15, 2023
83bcfd0
Let's try Django 4.2
deniszh Aug 15, 2023
7518942
Merge pull request #2818 from deniszh/deniszh/readthedocs
deniszh Aug 15, 2023
80e3ff4
fix STATIC_ROOT not used for dashboard theme search (Fix #2683, #1702)
niol Aug 3, 2023
f85f997
fixup! fix STATIC_ROOT not used for dashboard theme search (Fix #2683…
niol Aug 24, 2023
e058266
Merge pull request #2816 from niol/master
deniszh Aug 25, 2023
58f7e9c
Tags Docs: fix allowed characters
danielbeardsley Oct 26, 2023
60517f8
Merge pull request #2821 from danielbeardsley/patch-1
deniszh Oct 26, 2023
2889841
Update install.rst
lx183 Oct 27, 2023
b2cbd12
Merge pull request #2822 from lx183/patch-1
deniszh Oct 27, 2023
6bf7632
Bump GitHub workflows to latest versions
deining Nov 15, 2023
4a836db
Fix typos
deining Nov 15, 2023
362a23e
Merge pull request #2826 from deining/bump-github-workflows
deniszh Nov 15, 2023
0ec7201
Merge pull request #2827 from deining/fix-typos
deniszh Nov 15, 2023
ed4171d
django.conf.urls.url() was deprecated in Django 3, and removed in Dja…
niol Dec 16, 2023
8b3ebbf
getargspec is deprecated in python3.11
niol Dec 16, 2023
86f377c
the imp module has been removed in python3.12
niol Feb 1, 2024
4e8e40c
Merge pull request #2829 from niol/master
deniszh Jun 15, 2024
c195b5b
ugettext_lazy is deprecated, need to bump django-tagging
obfuscurity Jul 30, 2024
80c999a
monkeypatch so tagging won't break on smart_text
obfuscurity Jul 30, 2024
4f6d814
need import_metadata so we can pipenv install
obfuscurity Jul 30, 2024
7abe2f5
add Pipfile lockfile for dependabot
obfuscurity Jul 30, 2024
600ccb3
Merge pull request #2842 from obfuscurity/obfu/add_pipfile_lock
obfuscurity Jul 30, 2024
d0d0600
Revert "Add Pipfile.lock"
obfuscurity Jul 30, 2024
1a8fa19
Merge pull request #2843 from graphite-project/revert-2842-obfu/add_p…
obfuscurity Jul 30, 2024
fee0103
Update carbon-daemons.rst
earthgecko Aug 16, 2024
54b75c5
Update carbon-daemons.rst
earthgecko Aug 16, 2024
31f92f2
Merge pull request #2845 from earthgecko/earthgecko-rewrite-rules-docs
deniszh Aug 17, 2024
66dcd48
Django 4.2 support (#2846)
deniszh Aug 25, 2024
cc3423b
Bump codecov/codecov-action from 3 to 4
dependabot[bot] Aug 25, 2024
1a3beab
Bump actions/checkout from 2 to 4
dependabot[bot] Aug 25, 2024
5d57968
Bump actions/setup-python from 2 to 5
dependabot[bot] Aug 25, 2024
89c9f18
Bump github/codeql-action from 2 to 3
dependabot[bot] Aug 25, 2024
b5e7619
Update jinja2 requirement from <3.1.0 to <3.2.0
dependabot[bot] Aug 25, 2024
583434e
Bump whitenoise from 4.1.4 to 6.7.0
dependabot[bot] Aug 25, 2024
65c7eaa
Bump django-tagging from 0.4.3 to 0.5.0
dependabot[bot] Aug 25, 2024
e4f01cd
Monkeypatching tagging (#2857)
deniszh Aug 25, 2024
195de5c
Merge pull request #2847 from graphite-project/dependabot/github_acti…
deniszh Aug 25, 2024
1693bd1
Merge pull request #2848 from graphite-project/dependabot/github_acti…
deniszh Aug 25, 2024
ea9a8c3
Merge pull request #2849 from graphite-project/dependabot/github_acti…
deniszh Aug 25, 2024
8017c0e
Merge pull request #2850 from graphite-project/dependabot/github_acti…
deniszh Aug 25, 2024
d331484
Merge pull request #2856 from graphite-project/dependabot/pip/django-…
deniszh Aug 25, 2024
d12d3b3
Merge pull request #2854 from graphite-project/dependabot/pip/whiteno…
deniszh Aug 25, 2024
3020e45
Rollback whitenoise upgrade
deniszh Aug 25, 2024
55adbb6
Merge pull request #2859 from deniszh/rollb
deniszh Aug 25, 2024
949546e
Adding ability to run tests manually
deniszh Feb 2, 2025
0a7e849
Removing py3,8, adding 3.13, removing TravisCI config
deniszh Feb 2, 2025
bdeeb06
Switch tests to 3.13
deniszh Feb 2, 2025
0560bd5
Sync Django version with requirements.txt
deniszh Feb 2, 2025
56b5b87
Doc tests are working on 3.10 only, todo fix
deniszh Feb 2, 2025
bfd6c45
Revert "Sync Django version with requirements.txt"
deniszh Feb 2, 2025
163940e
Reapply "Sync Django version with requirements.txt"
deniszh Feb 2, 2025
364b076
Let's try this
deniszh Feb 2, 2025
2e89422
Ok, more fixes
deniszh Feb 2, 2025
7edba72
let's restart
deniszh Feb 2, 2025
e9a57c1
First fix
deniszh Feb 2, 2025
1194f85
Second fix
deniszh Feb 2, 2025
0ca7c5f
Lint fixes
deniszh Feb 2, 2025
43174b6
More lint fixes
deniszh Feb 2, 2025
71ac6a9
Revert "Reapply "Sync Django version with requirements.txt""
deniszh Feb 2, 2025
a7e6891
Reapply "Reapply "Sync Django version with requirements.txt""
deniszh Feb 2, 2025
10df5d8
doc fix
deniszh Feb 2, 2025
10dc9d4
doc fix 2
deniszh Feb 2, 2025
675f8d8
doc fix 3
deniszh Feb 2, 2025
c088374
Merge pull request #2874 from deniszh/deniszh/fix-tests
deniszh Feb 2, 2025
3c3a031
Bump alabaster from 0.7.12 to 1.0.0
dependabot[bot] Feb 2, 2025
68fc40d
Bump codecov/codecov-action from 4 to 5
dependabot[bot] Feb 2, 2025
a8f430a
Merge pull request #2851 from graphite-project/dependabot/pip/alabast…
deniszh Feb 2, 2025
47b553e
Merge pull request #2853 from graphite-project/dependabot/pip/jinja2-…
deniszh Feb 2, 2025
39acdf1
Merge pull request #2866 from graphite-project/dependabot/github_acti…
deniszh Feb 2, 2025
1f8ec5b
Bump sphinx from 1.3.6 to 8.1.3
dependabot[bot] Feb 2, 2025
d125792
Merge pull request #2862 from graphite-project/dependabot/pip/sphinx-…
deniszh Feb 2, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions .backportrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"upstream": "graphite-project/graphite-web",

// You can pre-select branches you use often
"branches": [
{ "name": "1.1.x", "checked": true },
{ "name": "1.0.x", "checked": false },
{ "name": "0.9.x", "checked": false }
],

// Backport multiple commits
"multipleCommits": true,

// Backport to multiple branches
"multipleBranches": true,

// Labels will be added to the PR
"labels": ["backport"]
}
10 changes: 10 additions & 0 deletions .deepsource.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
version = 1

test_patterns = ["*/test/**"]

[[analyzers]]
name = "python"
enabled = true

[analyzers.meta]
runtime_version = "3.x.x"
34 changes: 34 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
module.exports = {
"env": {
"browser": true,
"es6": true,
},
"parserOptions": { "ecmaVersion": 8 },
"extends": "eslint:recommended",
"rules": {
"linebreak-style": [
"error",
"unix"
],
"quotes": [
"error",
"single"
],
"semi": [
"error",
"always"
],
"no-use-before-define": [
"error",
{ "functions": true, "classes": true }
],
"camelcase": [
"error",
{ "properties": "always" }
],
"eqeqeq": [
"error",
"always"
],
}
};
29 changes: 29 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
name: Bug report
about: Create a report to help us improve
title: "[BUG]"
labels: bug
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Environment (please complete the following information):**
- OS flavor: [e.g. Ubuntu, CentOS, Debian etc]
- Graphite-web version [e.g. 1.1.2, 1.0.1, etc]
- Django/Python version [e.g. 1.11/2.7, 2.1/3.8 etc]
- Setup type [e.g. pip, from sources, from OS packages etc]

**Additional context**
Add any other context about the problem here.
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: enhancement
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
10 changes: 10 additions & 0 deletions .github/ISSUE_TEMPLATE/general-support-question.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
name: General support question
about: General support question
title: "[Q]"
labels: question
assignees: ''

---


12 changes: 12 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: monthly
- package-ecosystem: pip
directory: "/"
schedule:
interval: weekly
time: '10:00'
open-pull-requests-limit: 10
17 changes: 17 additions & 0 deletions .github/stale.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Number of days of inactivity before an issue becomes stale
daysUntilStale: 60
# Number of days of inactivity before a stale issue is closed
daysUntilClose: 7
# Issues with these labels will never be considered stale
exemptLabels:
- pinned
- security
# Label to use when marking an issue as stale
staleLabel: stale
# Comment to post when marking an issue as stale. Set to `false` to disable
markComment: >
This issue has been automatically marked as stale because it has not had
recent activity. It will be closed if no further activity occurs. Thank you
for your contributions.
# Comment to post when closing a stale issue. Set to `false` to disable
closeComment: false
56 changes: 56 additions & 0 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: "CodeQL"

on:
push:
branches: [ master, 0.9.x, 1.0.x, 1.1.x ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ master ]
schedule:
- cron: '45 9 * * 0'

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest

strategy:
fail-fast: false
matrix:
language: [ 'javascript', 'python' ]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ]
# Learn more:
# https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed

steps:
- name: Checkout repository
uses: actions/checkout@v4

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main

# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v3

# ℹ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl

# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language

#- run: |
# make bootstrap
# make release

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
105 changes: 105 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
name: Run tests

on:
push:
branches: [ master, 1.0.x, 1.1.x ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ master, 1.0.x, 1.1.x ]
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest

services:
redis:
image: redis
ports:
- 6379/tcp
options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=5
mariadb:
image: mariadb:latest
ports:
- 3306/tcp
env:
MARIADB_USER: graphite
MARIADB_PASSWORD: graphite
MARIADB_DATABASE: test_graphite
MARIADB_ROOT_PASSWORD: root
options: --health-cmd="/usr/local/bin/healthcheck.sh --su-mysql --connect --innodb_initialized" --health-interval=5s --health-timeout=2s --health-retries=3
postgres:
image: postgres
ports:
- 5432/tcp
env:
POSTGRES_PASSWORD: postgres
options: --health-cmd="pg_isready" --health-interval=10s --health-timeout=5s --health-retries=5

strategy:
matrix:
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']

steps:
- uses: actions/checkout@v4
- name: Install global dependencies
run: |
sudo apt-get -y install libcairo2-dev librrd-dev libboost-python-dev redis-tools
- name: Verify Redis connection
env:
REDIS_PORT: ${{ job.services.redis.ports[6379] }}
run: |
redis-cli -h "127.0.0.1" -p "${REDIS_PORT}" ping
- name: Verify MariaDB connection
env:
MYSQL_PORT: ${{ job.services.mariadb.ports[3306] }}
run: |
mysql -h"127.0.0.1" -P"${MYSQL_PORT}" -uroot -proot -e "GRANT ALL ON test_graphite.* TO 'graphite'@'localhost' IDENTIFIED BY 'graphite';"
- name: Verify PostgreSQL connection
env:
POSTGRES_PORT: ${{ job.services.postgres.ports[5432] }}
run: |
PGPASSWORD=postgres psql -h"127.0.0.1" -p"${POSTGRES_PORT}" -U postgres -c "CREATE USER graphite WITH CREATEDB PASSWORD 'graphite';"
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip 'setuptools<58' --force-reinstall
pip install 'tox<4' tox-gh-actions flake8 pytest pytz
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
- name: Test with tox
env:
TEST_REDIS_HOST: localhost
TEST_REDIS_PORT: ${{ job.services.redis.ports[6379] }}
TEST_MYSQL_HOST: localhost
TEST_MYSQL_PORT: ${{ job.services.mariadb.ports[3306] }}
TEST_MYSQL_PASSWORD: graphite
TEST_POSTGRES_HOST: localhost
TEST_POSTGRES_PORT: ${{ job.services.postgres.ports[5432] }}
TEST_POSTGRESQL_PASSWORD: graphite
run: |
tox
- name: Linting
if: ${{ matrix.python-version==3.13 }}
env:
TOXENV: lint
run: |
tox
- name: Testing documentation
if: ${{ matrix.python-version==3.13 }}
env:
TOXENV: docs
run: |
tox
- name: Run Codecov
if: ${{ matrix.python-version==3.13 }}
env:
TOXENV: lint
run: |
pip install codecov
codecov
- name: Upload coverage to Codecov
if: ${{ matrix.python-version==3.13 }}
uses: codecov/codecov-action@v5
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,8 @@ docs/_build
.idea
*.iml
storage
webapp/coverage.xml
webapp/.coverage
webapp/htmlcov
webapp/static
webapp/static/**/*
9 changes: 9 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
default_language_version:
python: python3.12

repos:
- repo: https://github.com/adamchainz/django-upgrade
rev: "1.20.0"
hooks:
- id: django-upgrade
args: [ --target-version, "4.2" ]
9 changes: 9 additions & 0 deletions .pre-commit-hooks.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
- id: django-upgrade
name: django-upgrade
description: Automatically upgrade your Django project code.
entry: django-upgrade
language: python
types: [python]
# for backward compatibility
files: ''
minimum_pre_commit_version: 0.15.0
22 changes: 22 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# .readthedocs.yaml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

# Required
version: 2

# Set the version of Python and other tools you might need
build:
os: ubuntu-22.04
tools:
python: "3.11"

# Build documentation in the docs/ directory with Sphinx
sphinx:
configuration: docs/conf.py

# We recommend specifying your dependencies to enable reproducible builds:
# https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html
python:
install:
- requirements: docs/requirements.txt
Loading